1

xamlコードで次の列を定義しています

<telerik:GridViewMaskedTextBoxColumn Mask="P1" MaskType="Numeric" 
DataMemberBinding="{Binding CurrentAllocationWeight}" 
DisplayIndex="1" IsReadOnly="True" DataFormatString="{}{0:P1}"  
Header="% Of Total" ColumnGroupName="CurrentAllocation"/> 

バインドされたプロパティは、null可能な10進値です。コードビハインドには他の検証はありません。セルに値を入力しようとすると、「DecimalConverterはSystem.Doubleから変換できません」という検証エラーが発生します。

ユーザーがたとえば5.5と入力でき、その値がセルに「5.5%」と表示されるようにするには、これをどのように修正すればよいですか?

ハサナイン

4

1 に答える 1

1

解決策は、2進数から10進数へのコンバーターを作成することです。値コンバーターのConvertBackメソッドでは、doubleを10進数にキャストするだけです。

于 2012-07-28T14:52:24.577 に答える