2012-04-04 11 views
1

Silverlight 5の古いアプリケーションをSilverlight 5に移行したところ、データフォームの1つに問題があることがわかりました。問題のDataformには、SL5ツールキットのNumericUpDownコントロールが含まれています。私たちは、次のシナリオで(それはfalseを返しますすなわち)にcommitEditが火災に表示されないことに気づいた:DataformとツールキットSilverlight 5のNumericUpDownが正常に動作しない

1)データフォーム

2を含むポップアップウィンドウを開きます)によって、NumericUpDownコントロールの値を変更します上矢印または下矢印をクリックします。

3)データフォームに接続された[保存]ボタンをクリックします。次のように

保存]ボタンに接続されClickイベントのコードは次のとおりです。

private void OKButton_Click(object sender, RoutedEventArgs e) 
{ 
    if (updateUserDataForm.ValidateItem()) 
     updateUserDataForm.CommitEdit(true); 
    else 
     updateUserDataForm.CancelEdit(); 
} 

XAMLは次のとおりです。

 <toolkit:DataField Label="Display Order" LabelStyle="{StaticResource LabelStyles}" HorizontalAlignment="Left"> 
      <toolkit:NumericUpDown Minimum="1" Maximum="200" Value="{Binding DisplayOrder, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" ValueChanged="NumericUpDown_ValueChanged"/> 

     </toolkit:DataField> 

あなたが最初の前にフォームのフォーカスに別のコントロールを与えるときにcommitEditが正常に動作します[保存]ボタンをクリックします。 SL 4ツールキットのDatFormとNumericUpDownコントロールを使用していたときには、このような動作はありませんでした。これはSL5ツールキットで導入された問題ですか?

答えて

1

OK、実際にはバグであることが表示されます:

http://forums.silverlight.net/t/182569.aspx/1

私はここで説明するようにNumericUpDownコントロールを拡張することにより、それを固定している:

http://silverlight.codeplex.com/workitem/4633

私はこの確信していますSL5ツールキット固有のバグでなければなりません。

+0

実際、このバグはSL4ツールキットにも存在していたと思います。私たちがSL4アプリケーションでそれを見なかった理由は、ポップアップウィンドウの最初のフィールドにフォーカスが設定されるとすぐにフォーカスを設定していたからです。 –

関連する問題