将验证弹出窗口添加到Silverlight Dataform上的自定义组合框字段

时间:2010-04-17 23:33:00

标签: silverlight wcf-ria-services dataform

我使用绑定到视图模型上的实体的Dataform,对于需要创建项目组合框的一个字段,我创建它并使用自动生成事件上的代码将其绑定:

            ComboBox makes = new ComboBox();
              Binding selectedItem = new Binding("conc_claimtype")
            {  
                ValidatesOnExceptions = true,
                ValidatesOnDataErrors = true,
                 ValidatesOnNotifyDataErrors = true,
                NotifyOnValidationError= true,
                Mode = BindingMode.TwoWay
            };
            makes.Items.Add("AI");
            makes.Items.Add("CO");
            makes.Items.Add("RE");

            makes.SetBinding(ComboBox.SelectedItemProperty, selectedItem);
            DataField makesField = new DataField {  Content = makes, Label = e.Field.Label };
            e.Field = makesField;
            e.Cancel = false;

我想知道如何在需要字段时让弹出窗口显示在组合框中,并像常规文本框那样显示错误消息,如果你将其设置为必需而未选择,则会给出验证错误,因为我可以在ValidationSummary上看到它,但它没有显示标签,只有错误消息,我认为它可能是一个错误。

我真正需要的是用文本框这样的弹出窗口显示该字段,我想我必须得到某种形式的组合框来显示验证错误吗?我在哪里可以找到这个syle?

1 个答案:

答案 0 :(得分:2)

我解决了它制作一个小黑客,我在domaincontext的元数据上添加了一个验证规则,其中我说值不是一个空字符串,然后我添加一个转换器到组合框中的绑定,当它是null我转换回一个emptystring,这样我得到了验证工作adn popup与组合框上的错误消息apear。

如果有人需要解决这个问题,我可以在这里发布一些代码。

关于stackoverflow的第一个问题,我自己回答;)lol