【问题标题】:ASP.net Hot to create custom command for control that implement ITemplate interface?ASP.net Hot 为实现 ITemplate 接口的控件创建自定义命令?
【发布时间】:2012-01-03 10:17:10
【问题描述】:

我拥有从ITemplate 接口继承的控制权。 数据显示在HtmlTable 控件中,在控件初始化时自动生成。 每行包含代表标准命令(编辑、删除等)的ImageButton 控件。 这里使用标准命令创建ImageButton 并将其添加到行模板的代码:

var lkbCancel = new ImageButton()
{
    CommandName = "Edit",
    ImageUrl = "EditIco.png",
    ToolTip = "Edit",
    CausesValidation = false,
};

commandCell.Controls.Add(lkbCancel);

我想用自定义命令添加ImageButton(不是标准命令添加、编辑、删除等)。 那么,如何在Itemplate控件中添加自定义命令并正确处理呢?

【问题讨论】:

    标签: asp.net command dynamic-data itemplate


    【解决方案1】:

    只订阅点击事件?

    lkbCancel.Click += (sender,e) => {
        //Do something here..
    };
    

    您可以访问当前绑定到行的数据项,请参阅here

    【讨论】:

    • 但我无法访问 Click 事件实现中的低估行... 可能存在某种方式来传递 Click 或 Command 事件中的当前行?
    • 您目前如何处理Edit 和Delete 命令?
    • 您可能可以使用NamingContainer 或Parent 访问控制树中的表格行,但是您可以访问该行绑定的数据项,请参阅msdn.microsoft.com/en-us/library/y0h809ak(v=vs.71).aspx
    • 我不处理 Edit 和 Delete 命令。这是标准的comaands,并在可绑定对象中自动处理。我只是在CommandName 属性中指定“编辑”或“删除”,命令将按预期工作,无需任何额外操作。
    猜你喜欢
    • 1970-01-01
    • 2021-05-04
    • 1970-01-01
    • 2010-10-19
    • 2018-07-17
    • 1970-01-01
    • 2011-12-01
    • 2019-03-09
    • 1970-01-01
    相关资源
    最近更新 更多