如何将WPF椭圆的高度绑定到其自己的宽度?

柯蒂斯

我在Grid.Row和Grid.Column内部绘制了一个椭圆。行始终比列宽高。

我想绘制一个椭圆,该椭圆填充网格列的宽度,谁的高度使其成为一个完美的圆。

我也想在上述椭圆的正中央绘制一个数字。基本上以一个以数字为中心的圆结束。

我可以在椭圆和包含该数字的TextBlock上轻松设置Horizo​​ntalAlignment =“ Stretch”。这为我照顾宽度。但是,即使Grid.Column的宽度发生变化,如何使Ellipse和TextBlock的高度始终匹配其Width?

这是一些XAML来说明这一点。在下面的XAML中,我希望硬编码的“ 63”基于Grid.Column宽度或椭圆的Width字段:

    <Ellipse Grid.Row="1" Grid.Column="0" HorizontalAlignment="Stretch" Height="63" Stroke="Black" StrokeThickness="3" VerticalAlignment="Top"/>
    <TextBlock Grid.Row="1" Grid.Column="0" Width="63" Height="63" VerticalAlignment="Top" Text="1" TextAlignment="Center" FontSize="42" FontWeight="Bold"/>

感谢你的帮助。我最终使用了Herdo的答案。只需将Horizo​​ntalAlignment设置为Stretch,然后将高度绑定到椭圆的实际宽度即可。我对椭圆和文本块做了同样的事情:

    <Ellipse HorizontalAlignment="Stretch" Height="{Binding ActualWidth, RelativeSource={RelativeSource Self}}"/>
    <TextBlock HorizontalAlignment="Stretch" Height="{Binding ActualWidth, RelativeSource={RelativeSource Self}}"/>
赫多

假设您有一个Grid包含Ellipse容器,则可以使用该ActualWidth属性并保持其拉伸状态,而无需设置Width属性-允许您在不引用父容器的情况下使用Ellipse:

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="*"/> <!-- Or whatever width -->
    </Grid.ColumnDefinitions>

    <Ellipse Grid.Column="0"
             HorizontalAlignment="Stretch"
             Height="{Binding ActualWidth, RelativeSource={RelativeSource Self}}"/>
</Grid>

请考虑ActualWidth有关MSDN属性的说明

由于ActualWidth是一个计算所得的值,因此应注意,布局系统进行的各种操作可能会报告多个或增量的更改。布局系统可能正在计算子元素所需的度量空间,父元素的约束等。

因此,以下示例代码...

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="30"/>
        <ColumnDefinition Width="*"/>
    </Grid.ColumnDefinitions>
    <Grid.RowDefinitions>
        <RowDefinition Height="*"/>
        <RowDefinition Height="*"/>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>

    <Ellipse Grid.Row="1"
             Grid.Column="1"
             HorizontalAlignment="Stretch"
             Fill="Red"
             Height="{Binding ActualWidth, RelativeSource={RelativeSource Self}}"/>
</Grid>

...将导致此行为(宽度/高度每次都会更新,容器-Grid在这种情况下-会更改其布局):

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

WPF将矩形的宽度和高度绑定到相对源

来自分类Dev

如何将 bool 值数组绑定到其对应椭圆在 cs 代码中的可见性?

来自分类Dev

如何将视图高度设置为等于其宽度

来自分类Dev

如何将ImageView与底部对齐,填充其宽度和高度并保持其纵横比?

来自分类Dev

如何将Kendo Textbox控件绑定到其数据?

来自分类Dev

如何将 XAML contentView 绑定到其背后的代码

来自分类Dev

如何将用户控件的属性绑定到MainViewModel并将其数据上下文绑定到其自己的ViewModel?

来自分类Dev

如何将窗口还原为其原始状态(与之前相同的高度和宽度)?

来自分类Dev

react-konva 如何将舞台宽度和高度设置为等于其容器?

来自分类Dev

如何将数据绑定到WPF中的gridcontrol

来自分类Dev

如何将XML绑定到WPF TreeView?

来自分类Dev

WPF:如何将通用数据绑定到TreeView?

来自分类Dev

如何将WPF控件绑定到类方法的结果?

来自分类Dev

如何将ObservableConcurrentDictionary绑定到WPF TreeView

来自分类Dev

如何将组合框绑定到工具提示WPF

来自分类Dev

如何将枚举ItemsControl绑定到WPF中的集合?

来自分类Dev

如何将WPF CheckBox绑定到条件?

来自分类Dev

如何将WPF控件绑定到类方法的结果?

来自分类Dev

如何将XML绑定到DataGrid-WPF

来自分类Dev

WPF:如何将通用数据绑定到TreeView?

来自分类Dev

如何将WPF控件的边距绑定到属性?

来自分类Dev

WPF 如何将命令绑定到 RichTextBox 中的 ContextMenu?

来自分类Dev

如何将“键绑定”方法移到其自己的类中?

来自分类Dev

将网格宽度绑定到数据网格宽度wpf

来自分类Dev

将高度/宽度绑定到XAML中的子元素

来自分类Dev

如何将图像的宽度和高度继承到视频标签

来自分类Dev

如何将每个jasper文件编译到其自己的目录?

来自分类Dev

如何将命令从 ViewModel 绑定到不在自己的文件中的 DataTemplate

来自分类Dev

WPF:如何将OpenFileDialog的结果绑定到已经绑定的TextBox.Text

Related 相关文章

  1. 1

    WPF将矩形的宽度和高度绑定到相对源

  2. 2

    如何将 bool 值数组绑定到其对应椭圆在 cs 代码中的可见性?

  3. 3

    如何将视图高度设置为等于其宽度

  4. 4

    如何将ImageView与底部对齐,填充其宽度和高度并保持其纵横比?

  5. 5

    如何将Kendo Textbox控件绑定到其数据?

  6. 6

    如何将 XAML contentView 绑定到其背后的代码

  7. 7

    如何将用户控件的属性绑定到MainViewModel并将其数据上下文绑定到其自己的ViewModel?

  8. 8

    如何将窗口还原为其原始状态(与之前相同的高度和宽度)?

  9. 9

    react-konva 如何将舞台宽度和高度设置为等于其容器?

  10. 10

    如何将数据绑定到WPF中的gridcontrol

  11. 11

    如何将XML绑定到WPF TreeView?

  12. 12

    WPF:如何将通用数据绑定到TreeView?

  13. 13

    如何将WPF控件绑定到类方法的结果?

  14. 14

    如何将ObservableConcurrentDictionary绑定到WPF TreeView

  15. 15

    如何将组合框绑定到工具提示WPF

  16. 16

    如何将枚举ItemsControl绑定到WPF中的集合?

  17. 17

    如何将WPF CheckBox绑定到条件?

  18. 18

    如何将WPF控件绑定到类方法的结果?

  19. 19

    如何将XML绑定到DataGrid-WPF

  20. 20

    WPF:如何将通用数据绑定到TreeView?

  21. 21

    如何将WPF控件的边距绑定到属性?

  22. 22

    WPF 如何将命令绑定到 RichTextBox 中的 ContextMenu?

  23. 23

    如何将“键绑定”方法移到其自己的类中?

  24. 24

    将网格宽度绑定到数据网格宽度wpf

  25. 25

    将高度/宽度绑定到XAML中的子元素

  26. 26

    如何将图像的宽度和高度继承到视频标签

  27. 27

    如何将每个jasper文件编译到其自己的目录?

  28. 28

    如何将命令从 ViewModel 绑定到不在自己的文件中的 DataTemplate

  29. 29

    WPF:如何将OpenFileDialog的结果绑定到已经绑定的TextBox.Text

热门标签

归档