2010-12-03 12 views
3

次のコードでSilverlight 4.0のフィールド検証機能を使用したいと思っています。動作させるのに問題があります。次のコードでF#/ Silverlightフィールドの検証を行うにはどうすればよいですか?

MyForm.fs:

// imports, etc 
type MyForm() as this = 
    inherit UriCanvasControl("/Project;component/MyForm.xaml", "Enter Stuff") 

    [<DefaultValue>] 
    val mutable myTextBox: TextBox 

    do 
     Application.LoadComponent(this, base.uri) 
     this.myTextBox <- this?myTextBox 
// other stuff 

MyForm.xaml:

// ... 
<TextBox Name="myTextBox" Text="{Binding Path=myTextBox,Mode=TwoWay,ValidatesOnExceptions=True,NotifyOnValidationError=True}" TextChanged="Duration_Changed" Grid.Column="0" Margin="0,0,2,0"></TextBox> 
// ... 

私は.fsファイルにMyTextBoxをフィールドの上に注釈を入れて試してみたが、コンパイラは、その(注釈不満like:[Required(ErrorMessage="enter something!")])。

アイデア?ありがとう。

答えて

2

私は、あなたが財産で運が良いと思う。

type Yadda() = ... 
    let mutable backingField : TextBox = null 
    [<RequiredOrWhatever(blah)>] 
    member this.TheProperty with get() = backingField 
          and set(x) = backingField <- x 

しかし、私はSilverlightの詳細を今すぐ確認するのに十分ではありません。

+0

私はF#についてよく分かりませんが、フィールドではなくプロパティに配置する必要があるデータ検証アノテーションが機能するようにします。 – AnthonyWJones

関連する問題