0

データ入力にDataFormを使用しているSL3アプリケーションがあります。フォームを好きなように見せたいので、<dataControls:DataForm.EditTemplate>テンプレートを使用して、見栄えの良いフォームデザインを作成しました。

主な問題は、テンプレート内で、「フィールド」コントロール(DataFormTextFieldなど)の代わりに通常のコントロール(TextBoxなど)を使用する必要があることです。どちらもほぼ同じように機能しますが、検証に関しては大きな違いがあります。

バインドされているプロパティのセッターで例外をスローすると、両方とも適切な赤い記号とエラーが表示されますが、検証属性(たとえば[Required(ErrorMessage = "can't be empty!")])でプロパティを装飾すると、DataFormTextFieldコントロールのみが表示され、TextBoxコントロールは表示されません。エラーが表示されます。どちらの場合も、ErrorSummaryコントロールのコレクションにエラーがあるため、エラーが考慮されていることがわかります...

どんな助けでも大歓迎です。

4

1 に答える 1

0

テンプレート フィールドを使用していますか?

   <df:DataFormTemplateField FieldLabelContent="Year"> 
      <df:DataFormTemplateField.DisplayTemplate> 
        <DataTemplate> 
          <TextBox Text="{Binding Year}" HorizontalAlignment="Left" /> 
        </DataTemplate> 
      </df:DataFormTemplateField.DisplayTemplate> 
      <df:DataFormTemplateField.EditTemplate> 
        <DataTemplate> 
          <TextBox Text="{Binding Year}" HorizontalAlignment="Left" /> 
        </DataTemplate> 
      </df:DataFormTemplateField.EditTemplate> 
    </df:DataFormTemplateField> 
于 2009-05-25T14:41:15.653 に答える