在MonoTouch.Dialog中设置按钮颜色

本文关键字:按钮 颜色 设置 MonoTouch Dialog | 更新日期: 2023-09-27 17:59:33

我有以下代码:

[OnTap ("Account")]
[Alignment (UITextAlignment.Center)]
[Entry ("Create ScanDo! Account")]
public string Login;

我想根据另一个字段的内容动态设置"单元格"背景色,然后单击按钮。有人能用一些样品给我指个方向吗?

谢谢,Rick

在MonoTouch.Dialog中设置按钮颜色

我给出的答案是:

btnLogin = new StyledStringElement("", delegate {Account();})

要定义对象,请将其添加到RootElement,然后:

btnLogin.BackgroundColor = UIColor.Green;

设置颜色!这个方法可以让我设置颜色、字体、大小和标题。

干得好Miguel,谢谢!

当您将按钮添加到根集合时,您可以设置颜色。就像设置剖面的元素一样。

Root = new RootElement("First Section") {
    new Section ("Test"){
        new StyledStringElement("Login", delegate { Account(); })
        {
            BackgroundColor = UIColor.Green
        }
    }
}

我不喜欢一直拉我的项目,但在这种情况下,这对你来说是最好的选择。

结账https://github.com/RobertKozak/MonoMobile.MVVM

我的项目一开始是为MonoTouch.Dialog添加数据绑定支持,但现在已经发展成为一个比MonoTouch.Dialog.更容易使用的更大的框架

使用MonoMobil.MVM,执行所需操作的代码如下所示:

public class ButtonView : View, INotifyPropertyChanged
{
  private UIColor ButtonColor = UIColor.Red;
   [Button]
   [Bind("ButtonColor", "BackgroundColor")]
   public void Test()
   {
       ButtonColor = UIColor.Green;
       PropertyChanged(this, new PropertyChangedEventArgs("ButtonColor"));
   }
   public event PropertyChangedEventHandler PropertyChanged = (s,e)=>{};
}

有更好的方法可以使用适当的ViewModel来实现这一点,但这将按列出的方式工作(我在这里键入它之前对它进行了测试。)

MonoMobile.MVVM仍处于测试阶段,但有足够的资源让您继续前进。在我完成INotifyCollectionChanged的实现并为各种Element属性添加了更多绑定之后,它应该在接下来的几周内处于完全发布状态。