コンボボックスの周りの赤い長方形を削除する必要があります。私は(以下の)このようにxamlでコンボボックスをセットアップし、Validation.ErrorTemplateをオーバーライドしようとしています。
<ComboBox x:Name="comboPodkategoria"
Margin="0,3,0,0"
IsSynchronizedWithCurrentItem="False"
IsEditable="False"
ItemsSource="{Binding Source={StaticResource PodKategoriaLookup}, UpdateSourceTrigger=PropertyChanged, ValidatesOnDataErrors=True}"
SelectedValue="{Binding IDPodKategoria}"
DisplayMemberPath="kat_popis" SelectedValuePath="IDPodkat" TabIndex="5" Style="{StaticResource combostyle}">
<Validation.ErrorTemplate>
<ControlTemplate>
</ControlTemplate>
</Validation.ErrorTemplate>
</ComboBox>
また、赤い長方形を削除するためのスタイルですが、xamlに、Visibilityプロパティが認識されないか、アクセスできないというエラーがあります。スタイルの定義は以下のとおりです。
<Style x:Key="combostyle">
<Style.Triggers>
<Trigger Property="Validation.HasError" Value="True">
<Setter Property="Visibility" TargetName="NotValid" Value="Visible"/>
</Trigger>
</Style.Triggers>
何か案が? :(
これを使用して、Validation.ErrorTemplateを変更します
<ControlTemplate x:Key="ComboBoxValidationErrorTemplate">
<DockPanel>
<Border BorderBrush="Blue" BorderThickness="4">
<AdornedElementPlaceholder />
</Border>
</DockPanel>
</ControlTemplate>
そしてそれをあなたのコンボボックスで次のように使用します
<ComboBox Validation.ErrorTemplate="{StaticResource ComboBoxValidationErrorTemplate}"
...>
検証エラーが表示されないようにするには、DockPanelを削除するか、VisibilityをCollapsedに設定するか、その他の方法を選択します。
ほとんど忘れてしまった、おそらく「赤い境界線」を削除する最も簡単な方法
<ComboBox Validation.ErrorTemplate="{x:Null}"
...>
コンボボックスを追加しますValidation.ErrorTemplate = "{x:Null}";このコードはエラーを無視します。