Xamarin Forms 通过 setter 设置边距

问题描述

我正在尝试根据数据以编程方式设置边距。我使用了一个转换器来实现这一点。设置背景颜色效果很好,但我找不到如何设置边距。

这是我的代码

private void SetStyles()
        {
            Style incomingMessageStyle = new Style(typeof(Frame))
            {
                Setters = {
                    new Setter { Property = VisualElement.BackgroundColorProperty,Value = Color.Fromrgb(221,221,221) },new Setter { Property = Margin,Value = "10,10,80,0"} //MARGIN IS NOT FOUND!
                }
            };
            Resources.Add("IncomingMessageStyle",incomingMessageStyle);

            Style outgoingMessageStyle = new Style(typeof(Frame))
            {
                Setters = {
                    new Setter { Property = VisualElement.BackgroundColorProperty,Value = Color.Fromrgb(178,226,129) },80"} //HOW TO SET THE MARGIN HERE?
                }
            };
            Resources.Add("OutgoingMessageStyle",outgoingMessageStyle);
        }

解决方法

试试这个

new Setter { Property = View.MarginProperty,Value = new Thickness(...) }