在wpf中设计图像控制的时间宽度/高度

时间:2015-03-08 18:13:23

标签: .net wpf visual-studio xaml

我正在WPF中创建一个图库控件,并尽可能使用尽可能多的设计时数据来简化Visual Studio(2013)中的调整。

到目前为止,我有以下代码,它在运行时有意,但设计师似乎忽略了d:DesignHeight和d:DesignWidth attribut on Image元素。

<UserControl x:Class="ImageGalleryControl"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
             mc:Ignorable="d"
             d:DesignHeight="400"
             d:DesignWidth="800"
             d:DataContext="{d:DesignData Source=DesignData/ImageCollection.xaml}">
    <ScrollViewer VerticalScrollBarVisibility="Auto">
        <ItemsControl ItemsSource="{Binding}">
            <ItemsControl.ItemsPanel>
                <ItemsPanelTemplate>
                    <WrapPanel />
                </ItemsPanelTemplate>
            </ItemsControl.ItemsPanel>
            <ItemsControl.ItemTemplate>
                <DataTemplate>
                    <Image Source="{Binding}"
                           d:DesignHeight="150"
                           d:DesignWidth="150"
                           Height="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}}, Path=ImageWidth}"
                           Width="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}}, Path=ImageWidth}"
                           Margin="3"/>
                </DataTemplate>
            </ItemsControl.ItemTemplate>
        </ItemsControl>
    </ScrollViewer>
</UserControl>

它从ImageCollection.xaml中获取预期的设计时数据,但不是Image元素的设计高度。是不是应该这样工作,我的谷歌福让我失望,还是有另一种方式我可以实现同样的目标?

0 个答案:

没有答案