Xaml 更改数据模板内图像的宽度和高度
我在datatemplate中有一个图像。我想根据特定条件更改其高度和宽度。我怎样才能做到这一点 我拥有的XAML代码:Xaml 更改数据模板内图像的宽度和高度,xaml,winrt-xaml,Xaml,Winrt Xaml,我在datatemplate中有一个图像。我想根据特定条件更改其高度和宽度。我怎样才能做到这一点 我拥有的XAML代码: <ListBox x:Name="options_stack" HorizontalAlignment="Left" Margin="198,569,0,33" Width="603" ScrollViewer.HorizontalScrollBarVisibility="Auto" ScrollViewer.VerticalScrollBarVisibilit
<ListBox x:Name="options_stack" HorizontalAlignment="Left" Margin="198,569,0,33" Width="603" ScrollViewer.HorizontalScrollBarVisibility="Auto" ScrollViewer.VerticalScrollBarVisibility="Disabled" ScrollViewer.HorizontalScrollMode="Auto" Height="123" Style="{StaticResource ListBoxStyle}" ItemContainerStyle="{StaticResource ListBoxItemStyle}" >
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal" />
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemTemplate>
<DataTemplate>
<Image x:Name="options_image" Source ="{Binding}" Stretch="Fill" Width="123" Height="123" MaxHeight="123" MaxWidth="123" Tapped="apply_accessory"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
选项1
由于您正在绑定源属性,我将创建一个数据结构(用作DataContext)来保存源属性
、宽度
和高度
属性,然后绑定它们:
<Image x:Name="options_image"
Source ="{Binding Source}"
Width="{Binding Width}" Height="{Binding Height}"
MaxWidth="{Binding Width}" MaxHeight="{Binding Height}"
Stretch="Fill" Tapped="apply_accessory"/>
XAML为您提供了许多实现所需的方法,您可以选择最好、最干净的方法来解决您面临的问题。我尝试了绑定高度和宽度。但是当我用一种方法改变它们时,它就不起作用了。。。在我的方法中,我写下:optionDimensions op=newoptionDimensions();操作高度=123;操作宽度=123;我缺少什么?您是否实现了INotifyPropertyChanged?如果您使用的是
optionDimensions
列表,请改用observedcollection
。是的,它与observedcollection一起工作。谢谢,很高兴它成功了。请看我添加的另一个备选方案。它在将来对你有用。
<Border Background="{Binding Priority, Converter={StaticResource priorityToColorConverter}}"/>