[英]DataGrid CheckboxColumn bound to VM property not calling setter
預計到達時間:我使用的是Caliburn.Micro,因此網格的x:Name屬性被綁定到VM上名為MyData的屬性,該屬性又具有IsTrue屬性。 MyData確實繼承自PropertyChangeBase
我有一個DataGrid,其中的列綁定到ViewModel的bool屬性:
<DataGrid x:Name="MyData"
AutoGenerateColumns="False"
Width="282"
RowHeaderWidth="0"
CanUserAddRows="false">
<DataGrid.Columns>
<DataGridCheckBoxColumn Header="MyChckColumn"
Binding="{Binding IsTrue, Mode=TwoWay}"
Width="80"/>
</DataGrid.Columns>
</DataGrid>
僅當選擇了網格上的其他內容時,它才會進入設置器,而當我實際選中一個為空的框時,它才進入設置器。
public bool IsTrue
{
get
{
return _isTrue;
}
set
{
if (value.Equals(_isTrue)) return;
_isTrue= value;
NotifyOfPropertyChange(() => IsTrue);
}
}
我需要調用某些驗證方法,還是需要設置觸發器?
要獲得您想要的行為,必須將綁定的UpdateSourceTrigger
屬性設置為PropertyChanged
。
默認情況下,單元格失去焦點時,綁定源將更新。
Binding="{Binding IsTrue, UpdateSourceTrigger=PropertyChanged}"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.