您当前的位置: 首页 > 

光怪陆离的节日

暂无认证

  • 3浏览

    0关注

    1003博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

如何在WPF中设置Grid ColumnDefinitions的样式

光怪陆离的节日 发布时间:2022-08-09 14:39:10 ,浏览量:3

这是一种方式: 1)创建一个带有附加属性的集合,如下所示:

public class ColumnDefinitions : Collection { public static readonly DependencyProperty SourceProperty = DependencyProperty.RegisterAttached( “Source”, typeof(ColumnDefinitions), typeof(ColumnDefinitions), new PropertyMetadata( default(ColumnDefinitions), OnColumnDefinitionsChanged)); public static void SetSource(Grid element, ColumnDefinitions value) { element.SetValue(SourceProperty, value); } [AttachedPropertyBrowsableForChildren(IncludeDescendants = false)] [AttachedPropertyBrowsableForType(typeof(Grid))] public static ColumnDefinitions GetSource(Grid element) { return (ColumnDefinitions)element.GetValue(SourceProperty); } private static void OnColumnDefinitionsChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { var grid = (Grid)d; grid.ColumnDefinitions.Clear(); var columnDefinitions = (ColumnDefinitions)e.NewValue; if (columnDefinitions == null) { return; } foreach (var columnDefinition in columnDefinitions) { grid.ColumnDefinitions.Add(columnDefinition); } } } 2)然后你可以使用它作为资源和网格样式,如下所示: 请注意,必须使用x:Shared=“False”。如果没有相同的定义将添加到导致WPF抛出的许多网格中。

可以通过使用具有网格作为其ItemsPanelTemplate的ItemsControl来设置ColumnDefinitions。下面的示例显示了这一点。

关注
打赏
1665731445
查看更多评论
立即登录/注册

微信扫码登录

0.0382s