【发布时间】:2016-02-05 10:01:42
【问题描述】:
我想要一个带有动态添加按钮的StackPanel,当点击时更新标签内容。我使用Button.Click="ChildsButtonClick" 将StackPanel 中的事件分配给它的孩子并更新标签内容。但是,是否可以只使用XAML 和Bindings、Triggers 等...?你以为我是这个世界的新手。
XAML:
<StackPanel HorizontalAlignment="Left"
Height="165"
VerticalAlignment="Top"
Width="465"
Button.Click="ChildsButtonClick">
<Button x:Name="button"
Content="Button1"
d:LayoutOverrides="Height" />
<Button x:Name="button1"
Content="Button2"
d:LayoutOverrides="Height" />
</StackPanel>
<Label x:Name="label"
Content="Label"
HorizontalAlignment="Left"
Margin="0,195,0,0"
VerticalAlignment="Top" />
CS:
private void ChildsButtonClick(Object sender, RoutedEventArgs e)
{
Button a = e.Source as Button;
if (a != null)
{
label.Content = a.Content;
}
}
有没有办法在没有事件的情况下做到这一点?
【问题讨论】:
-
你需要触发一个事件让它做某事,否则你什么也做不了-.-
-
按钮无法使用触发器更新窗口上的新属性,即绑定到 label.content?
-
底线。你想点击一个按钮。那是一个事件。没有事件,没有变化。
-
如果要使用数据绑定,则必须将标签的内容与返回按钮内容的字符串属性绑定。