所以我有C#5.0 All-In-One for Dummies,但它并没有真正展示我想要实现的目标。这是我的XAML:
<StackPanel Grid.Column="1">
<Grid>
<Image Source="Images/039.JPG" x:Name="example_image"/>
<Image Source="Images/example.png" HorizontalAlignment="Right" VerticalAlignment="Bottom" Panel.ZIndex="999" x:Name="example_logo"/>
</Grid>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="8*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Slider Grid.Column="0" Margin="10" Maximum="100" SmallChange="1" ToolTip="Watermark size in percent (%)" Value="{Binding Path=SliderValue, Source={x:Static Application.Current}}"/>
<TextBlock Grid.Column="1" Text="{Binding Path=SliderValue, Source={x:Static Application.Current}}" HorizontalAlignment="Center" VerticalAlignment="Center" />
</Grid>
</StackPanel>
所以我有2个图像,一个图像1(水印)在另一个图像2的顶部。我有一个滑块,我已经将其绑定到App.xaml.cs中的值。
我需要做的是编写一个自定义命令,当滑块移动时会触发,我需要在这个命令中添加一些参数,这些参数将是2个图像名称,所以我可以使用命令操作这些控件。
我似乎无法训练如何做到这一点,我为命令Commands.cs创建了一个单独的文件。
为什么我要将2个图像名称作为参数发送,以便命令可重复使用,如果我想使用不同的图像控件。
我该怎么做呢?
答案 0 :(得分:1)
Slider上没有Command属性,尽管可以添加一个(参见https://gist.github.com/anonymous/4326429)
一个简单的选项是处理Slider上的ValueChanged
事件,或者如果App.xaml.cs上的SliderValue
属性是a,那么你可以从它发出可重用的“命令”代码设定器。
旁注,您可能希望查看MVVM模式,而不是将所有代码放在代码中。