代码之家  ›  专栏  ›  技术社区  ›  Vaccano

从控件获取绑定对象

  •  4
  • Vaccano  · 技术社区  · 15 年前

    我有以下XAML:

    <ItemsControl>
        <ItemsControl.ItemTemplate>
            <DataTemplate>
                <Button Content="{Binding Name}"></Button>
            </DataTemplate>
        </ItemsControl.ItemTemplate>
    </ItemsControl>
    

    在我的代码中,有一个事件允许我访问按钮。如何获取button对象并获取其名称绑定到的对象?

    以下是我要使用的psudo代码:

    public void MyEvent(Object obj)
    {
       Button myButton = (Button) obj;
       MyBoundClass myObject = GetBoundClassFromProperty(myButton.Name);
    
       // Do something with myObject.
    }
    
    1 回复  |  直到 15 年前
        1
  •  17
  •   Ian Oakes    15 年前

    尝试访问DataContext属性。这将包含对按钮绑定到的当前项的引用。

    public void MyEvent(Object obj) 
    { 
       Button myButton = (Button) obj; 
       MyBoundClass myObject = myButton.DataContext as MyBoundClass;
    
       // Do something with myObject. 
    }