我有GridView的列看起來就像是:GridView.FindControl() - 的作品,但不能正常
<Columns>
<asp:TemplateField HeaderText="Opcje">
<ItemTemplate>
<asp:LinkButton runat="server" Text="Accept" ID="AcceptBtn" CommandName="Accept"/>
<asp:LinkButton runat="server" Text="Deny" ID="DenyBtn" CommandName="Deny"/>
</ItemTemplate>
</asp:TemplateField>
</Columns>
正在創建一個新的行會,我想改變這兩個的LinkButton的CommandArgument屬性:
protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
{
((LinkButton)e.Row.FindControl("AcceptBtn")).CommandArgument = myFiles[fileIndex].Name;
((LinkButton)e.Row.FindControl("DenyBtn")).CommandArgument = myFiles[fileIndex].Name;
}
的問題是,代碼似乎沒有改變任何東西,當我點擊AcceptBtn,下面的代碼被調用:
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Accept")
{
string ss = (string)e.CommandArgument;
...
}
}
ss =「」。爲什麼?如果這個頁面是PostedBack,那麼這兩個CommandArguments都被清除了?