【问题标题】:Sizing items in WPF在 WPF 中调整项目大小
【发布时间】:2013-12-10 11:46:56
【问题描述】:

我目前正在创建自己的文本框控件,除了文本之外,它还显示一个小图标。此图标作为ViewBox 和一些Paths 保存在资源中。

目前,模板如下所示(相关部分):

<Border x:Name="Border" BorderThickness="1"
        BorderBrush="{TemplateBinding BorderBrush}" 
        Background="{TemplateBinding Background}">
    <DockPanel>
        <ContentPresenter Content="{TemplateBinding ImageContent}"
                          DockPanel.Dock="Left"
                          Margin="2"
                          Width="{Binding ElementName=PART_ContentHost, Path=Height}"
                          Height="{Binding ElementName=PART_ContentHost, Path=Height}" /> 
        <ScrollViewer x:Name="PART_ContentHost" Margin="2"/>
    </DockPanel>                            
</Border>

问题是,尽管我将图像的宽度和高度设置为文本框主要部分的高度,但它总是尽可能多地填充可用空间,导致巨大的图像覆盖整个屏幕。

我希望这个元素根据PART_ContentHost 自行调整大小。我怎样才能实现它?

【问题讨论】:

  • 您是否尝试过使用 ActualHeigh 和 ActualWidth?
  • 也为您的图像 ViewBox 发布 XAML。

标签: c# wpf styles controltemplate


【解决方案1】:

解决了。解决方案是使用PART_ContentHostDesiredHeight 而不是Height。欢迎使用 WPF 布局系统...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-18
    • 1970-01-01
    • 1970-01-01
    • 2010-11-01
    • 1970-01-01
    相关资源
    最近更新 更多