为动态创建的WPF控件在XAML中设置边距

| 我有一个WPF,可以在加载表单时动态创建按钮,并将它们添加到XAML中已声明的StackPanel中。我想在StackPanel.Resources内部的XAML中完全定义这些按钮的样式。到目前为止,我可以为Style属性做到这一点,但是我遇到的麻烦是实现边距的最佳方法。我知道“边距”是“厚度”,实际上不能以样式应用,但必须定义为静态资源并直接应用于“边距”属性。有没有一种方法可以在XAML中执行此操作而无需求助于背后的代码? 这是我的StackPanel的XAML:
        <StackPanel
            x:Name=\"_dialogButtons\"
            Orientation=\"Horizontal\"
            HorizontalAlignment=\"Right\"
            DockPanel.Dock=\"Right\">

            <StackPanel.Resources>
                <Style
                    TargetType=\"{x:Type Button}\">
                    <Setter
                        Property=\"MinWidth\"
                        Value=\"75\" />
                    <Setter
                        Property=\"Padding\"
                        Value=\"3\" />
                </Style>                    
            </StackPanel.Resources>

        </StackPanel>
谢谢, 麦克风     
已邀请:
        您声明“我知道边界是厚度,因此无法实际应用样式”,这是不正确的。可以在XAML中应用边距,the1ѭ类型具有类型转换器,该类型转换器可以将字符串转换为
Thickness
,从而允许您按以下方式对其进行定义:
<setter Property=\"Margin\" Value=\"5,5,5,5\"/>
    
        
<StackPanel.Resources>
    <Style
        TargetType=\"{x:Type Button}\">
        <Setter
            Property=\"MinWidth\"
            Value=\"75\" />
        <Setter
            Property=\"Padding\"
            Value=\"3\" />
        <Setter
            Property=\"Margin\"
            Value=\"3\" />
    </Style>                    
</StackPanel.Resources>
    
        
Padding
也是
Thickness
,看来您可以加上一点;)。 因此,只需按照与
Padding
相同的方式进行即可。     

要回复问题请先登录注册