我有一個用戶控件,它由一個gridview和鏈接按鈕組成。問題是,鏈接按鈕不起作用!請有人看看,並告訴我爲什麼和如何解決它請!LinkButton和用戶控制錯誤
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
var model = new List<UserControlProof.Model.Customer> {
new UserControlProof.Model.Customer {
Name = "Customer1", address = "Addr1" }),
new UserControlProof.Model.Customer {
Name = "Customer2", address = "Addr1" }),
new UserControlProof.Model.Customer {
Name = "Customer3", address = "Addr2" }),
new UserControlProof.Model.Customer {
Name = "Customer4", address = "Addr3" }) };
var Addr = (from m in model select m.address).Distinct();
foreach (string addr in Addr)
{
var cr = (UserControlProof.Controls.CollapseableRecordset)LoadControl(
"Controls//CollapseableRecordset.ascx");
cr.ID = cr.UniqueID;
form1.Controls.Add(cr);
cr.DisplayName = Addr;
var filterredAddress = from m in model where m.address == addr select m;
cr.DataSource = filterredAddress;
cr.Count = filterredAddress.Count();
if (cr.Count == 1)
{
cr.ViewCustomers = true;
}
cr.DataBind();
form1.Controls.Add(new Literal() { Text = "<br />" });
}
}
}
public partial class CollapseableRecordset : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GridView1.Columns.Clear();
BoundField f1 = new BoundField();
f1.DataField = "Customer";
f1.ShowHeader = false;
GridView1.Columns.Add(f1);
}
}
//private string displayName;
public string DisplayName
{
get
{
EnsureChildControls();
return LabelName.Text;
//return displayName;
}
set
{
EnsureChildControls();
LabelName.Text = value;
//displayName = value;
}
}
//private int count;
public int Count
{
get
{
EnsureChildControls();
return int.Parse(LabelCount.Text);
//return count;
}
set
{
EnsureChildControls();
LabelCount.Text = value.ToString();
//count = value;
}
}
//private bool ViewCustomers;
public bool ViewCustomers
{
get
{
EnsureChildControls();
return Link1.Visible;
}
set
{
EnsureChildControls();
Link1.Visible = value;
}
}
public object DataSource
{
get
{
EnsureChildControls();
return GridView1.DataSource;
}
set
{
EnsureChildControls();
GridView1.DataSource = value;
}
}
protected void Link1_Click(object sender, EventArgs e)
{
Label1.Visible = true;
}
}
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="CollapseableRecordset.ascx.cs" Inherits="UserControlProof.Controls.CollapseableRecordset" %>
<%@ Register Assembly="Microsoft.Practices.Web.UI.WebControls" Namespace="Microsoft.Practices.Web.UI.WebControls"
TagPrefix="pp" %>
<asp:Label ID="LabelName" runat="server" Text="Name"></asp:Label>
<asp:Label ID="LabelCount" runat="server" Text="Count"></asp:Label>
<asp:Panel ID="Panel1" runat="server">
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
ShowHeader="False">
</asp:GridView>
<br />
<asp:Label ID="Label1" runat="server" Text="Label" Visible="false"></asp:Label>
</asp:Panel>
<asp:LinkButton ID="Link1" runat="server" Text="View All"></asp:LinkButton>
public class Customer
{
public string Name { get; set; }
public string address { get; set; }
}
我們需要一些編輯請...:S – IAbstract 2010-02-06 20:12:34
@skaffman - thx !!! – IAbstract 2010-02-06 20:17:57
你能說明你的意思嗎?「不起作用?」 – Jacob 2010-02-06 20:45:38