0
我想从下面的ItemsControl中删除一个元素,而不使用Window.CommandBinding。有没有更简单的方法来做到这一点?从ItemsControl通过按下按钮XAML删除元素C++/CX
XAML:
<ItemsControl ItemsSource="{Binding Path=MyStringArray}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Button Content="Abcd"/>
<Button Content="-" Click="Button_Click_1"/>
</StackPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
如果没有更简单的方法,又怎能与Window.CommandBindings
也做,在这段代码中,我怎么能做出的第一个按钮的宽度取整个屏幕宽度减去第二个按钮的宽度?
谢谢。我真的不明白CommandBinding。我找到了另一种方法。我在按钮单击方法中使用以下代码行:myString = static_cast(sender) - > DataContext-> ToString();它给了我的值在向量中的字符串的相应值,所以我可以做一个搜索和删除元素(我没有重复)。我不太了解DataContext返回的内容。我认为它给出了具有约束力的第一个父代的绑定的值。 –
balauru
做了大致相同的事情。发件人是'Button',所以按钮的'DataContext'与'Button'的上下文相同。从上面的东西中,'',这个绑定正在查看ItemsControl的'DataContext',然后在其中寻找'MyStringArray'。 –
mydogisbox