我将 绑定text box
到包含位于 中的数字(正数和负数)的变量ViewModel
。
当变量更改时, 中的列的大小text box
也会更改(未定义列的大小)
我怎么知道该列在文本框中的文本之后没有改变(完全不清楚为什么会发生这种情况,如果有人知道我很想得到答案)
一些代码:
xml:
<Grid Grid.Row="3" Grid.RowSpan="1" Margin="0" >
<Grid.RowDefinitions>
<RowDefinition Height="25" />
<RowDefinition Height="25" />
<RowDefinition Height="25" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="25" />
<ColumnDefinition />
<ColumnDefinition Width="50" />
</Grid.ColumnDefinitions>
SOME ELEMENT
<TextBox IsReadOnly="True" Margin="3,2,0,2" Name="xName" Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" HorizontalContentAlignment="Right" Text="{Binding VM.SomeProp}"/>//THE PROPBLEM TEXTBOX
<TextBlock Grid.Row="2" Grid.Column="2" Margin="3,2" Name="txtblockname" Text="txt" />
</Grid>
这是我的道具
private float _someProp;
public float SomeProp
{
get { return _someProp; }
set
{
if (_someProp!= value)
{
_someProp= value;
NotifyPropertyChanged("SomeProp");
}
}
}
所以,问题是当数字为负数时,它才会改变大小,为什么会发生这种情况?