C# Tablecell事件处理程序
我正在用C#创建一个连续4个的小游戏 我的第一个想法是使用一个现有的表控件,给它6行5列,并给所有的tablecell对象一个唯一的id。然后我会继续向我自己定义的第一行中的每个单元格添加EventHandler,这样当用户单击其中一个时,我的代码将检查被单击的单元格下的单元格,并更改单元格的背景颜色,该单元格表示您在现实生活中插入的片段C# Tablecell事件处理程序,c#,event-handling,tablecell,C#,Event Handling,Tablecell,我正在用C#创建一个连续4个的小游戏 我的第一个想法是使用一个现有的表控件,给它6行5列,并给所有的tablecell对象一个唯一的id。然后我会继续向我自己定义的第一行中的每个单元格添加EventHandler,这样当用户单击其中一个时,我的代码将检查被单击的单元格下的单元格,并更改单元格的背景颜色,该单元格表示您在现实生活中插入的片段 我的问题是,如何将eventhandler添加到tablecell对象,因为唯一预定义的事件是数据绑定、初始化、加载、预渲染和卸载,而且它们不适合我的需要,所
我的问题是,如何将eventhandler添加到tablecell对象,因为唯一预定义的事件是数据绑定、初始化、加载、预渲染和卸载,而且它们不适合我的需要,所以我需要创建自己的事件。有什么想法吗?普通表格单元格没有OnClick事件。最简单的替代方法是在aspx页面顶部或web.config中放置
public class ClickableTableCell : TableCell, IPostBackEventHandler
{
public event EventHandler Click;
public override void RenderBeginTag(HtmlTextWriter writer)
{
Attributes.Add("onclick", Page.ClientScript.GetPostBackEventReference(this, null));
base.RenderBeginTag(writer);
}
public void RaisePostBackEvent(string eventArgument)
{
OnClick(new EventArgs());
}
protected void OnClick(EventArgs e)
{
if (Click != null)
Click(this, e);
}
}