C# 单击按钮时更改标签内容
我想要一个带有动态添加按钮的C# 单击按钮时更改标签内容,c#,wpf,xaml,C#,Wpf,Xaml,我想要一个带有动态添加按钮的StackPanel,这些按钮在单击时更新标签内容。我使用按钮。单击=“ChildsButtonClick”将堆栈面板中的事件分配给它的子事件,并更新标签内容。但是,是否只可以使用XAML和绑定,触发器等来实现呢。。?你以为我是新来的 XAML: 有没有办法在没有活动的情况下做到这一点?我让它起作用了。在代码隐藏中不使用事件。不确定它是否对你有帮助,但你可能可以根据需要使用它 <Grid> <Grid.Triggers>
StackPanel
,这些按钮在单击时更新标签内容。我使用按钮。单击=“ChildsButtonClick”
将堆栈面板中的事件分配给它的子事件,并更新标签内容。但是,是否只可以使用XAML
和绑定
,触发器
等来实现呢。。?你以为我是新来的
XAML:
有没有办法在没有活动的情况下做到这一点?我让它起作用了。在代码隐藏中不使用事件。不确定它是否对你有帮助,但你可能可以根据需要使用它
<Grid>
<Grid.Triggers>
<EventTrigger RoutedEvent="Button.Click" SourceName="Button">
<EventTrigger.Actions>
<BeginStoryboard>
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="label" Storyboard.TargetProperty="Content">
<DiscreteObjectKeyFrame KeyTime="0" Value="Content"/>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</BeginStoryboard>
</EventTrigger.Actions>
</EventTrigger>
</Grid.Triggers>
<DockPanel>
<Label DockPanel.Dock="Top" x:Name="label">Hi</Label>
<Button x:Name="Button" DockPanel.Dock="Bottom" Height="50" Width="50">
</Button>
</DockPanel>
</Grid>
你好
您需要触发事件以使其执行某些操作,否则您将什么也不做--按钮无法使用绑定到标签的触发器更新窗口上的新属性。内容?底线。您想单击一个按钮。这是一件大事。无事件,无更改。如果要使用数据绑定,必须使用返回按钮内容的字符串属性绑定标签内容。
private void ChildsButtonClick(Object sender, RoutedEventArgs e)
{
Button a = e.Source as Button;
if (a != null)
{
label.Content = a.Content;
}
}
<Grid>
<Grid.Triggers>
<EventTrigger RoutedEvent="Button.Click" SourceName="Button">
<EventTrigger.Actions>
<BeginStoryboard>
<Storyboard>
<ObjectAnimationUsingKeyFrames Duration="0" Storyboard.TargetName="label" Storyboard.TargetProperty="Content">
<DiscreteObjectKeyFrame KeyTime="0" Value="Content"/>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</BeginStoryboard>
</EventTrigger.Actions>
</EventTrigger>
</Grid.Triggers>
<DockPanel>
<Label DockPanel.Dock="Top" x:Name="label">Hi</Label>
<Button x:Name="Button" DockPanel.Dock="Bottom" Height="50" Width="50">
</Button>
</DockPanel>
</Grid>