首页 > 解决方案 > Validation Error : value "" could not be Converted xml in WPF ComboBox when Selected Item

问题描述

我试图编写这个验证, 在此处输入图像描述

 <ComboBox Name="CmbPlace" DisplayMemberPath="Name" 
                              SelectedValuePath="PlaceId" 
                              materialDesign:ComboBoxAssist.ShowSelectedItem="true"
                              Width="130" HorizontalContentAlignment="Right" Margin="5"
                              DropDownOpened="CmbPlace_OnDropDownOpened">
                        <ComboBox.Text>
                            <Binding Path="PlaceId">
                                <Binding.ValidationRules>
                                    <validation:RequireCmbValidation ValidatesOnTargetUpdated="True"/>
                                </Binding.ValidationRules>
                            </Binding>
                        </ComboBox.Text>

对于 TextBox 和另一个类似这样的组件 Validation 仅适用于 ComboBox 我遇到了这个问题,这是我的验证,我知道这将成功返回 ValidationResult.ValidResult

public class RequireCmbValidation: ValidationRule
{
    public override ValidationResult Validate(object value, CultureInfo cultureInfo)
    {
        if (!string.IsNullOrWhiteSpace(value?.ToString()))
            if (value.ToString() != "0")
                return ValidationResult.ValidResult;
            else
                return new ValidationResult(false, "Please Select one Item");
        return new ValidationResult(false, "Required!");
    }
}

标签: c#wpfmvvm

解决方案


我解决了我的问题

替换 <ComboBox.Text><ComboBox.SelectedValue>

5小时后......但我希望这对其他人有帮助......


推荐阅读