前台代码:
根据后台传递过来的参数动态设置
    <asp:Button ID="Button1" runat="server" 
    CommandArgument='<%# Eval(ID")%>'
    Text='<%#(Eval("ID").ToString() == ""?"Upload":"Update").ToString() %>' 
    Enabled='<%#(Eval("ID").ToString() == ""?false:true)%>
    OnClick="Button1_Click" />

  

后台在click函数中获得在前台设置的CommandArgument值:
    protected void Button1_Click(object sender, EventArgs e)
    {
        Button btn = sender as Button;
        int ID = int.Parse(btn.CommandArgument.ToString());
    }    

  注:其他控件设置思路一样。