如何在Click Handler上读取GridView ItemTemplate数据(XAML / C#)

时间:2013-12-13 11:53:19

标签: c# xaml microsoft-metro windows-store-apps windows-8.1

我正在使用GridView。我需要禁用点击几个itemTemplate。我将属性IsClickable设置为false,我想在ItemTemplate单​​击事件处理程序中读取此属性。

    void ItemView_ItemClick(object sender, ItemClickEventArgs e)
    {
        var isClickable = e.ClickedItem;
    }

当我调试时,此e.ClickedItem显示如下:

Debug inspection of clicked item

参见图片IsClickable: false。有没有办法检查此属性并在我的点击事件中执行return false;

1 个答案:

答案 0 :(得分:2)

您必须将ClickedItem对象强制转换为其特定类型,如下所示:

void ItemView_ItemClick(object sender, ItemClickEventArgs e)
{
    var isClickable = ((MyItemType)e).ClickedItem;
    //...
}

其中MyItemType是所单击控件的类型(或具有.IsClickable属性的他们的基类/接口)。

如果您在e.ClickedItem对象上设置监视,则在调试期间您将在监视面板中看到其类型。

编辑:

你不能在事件处理程序中完成return false;,因为它的返回类型是void。