private void SetItemCheckedState(DataSourceItem item, bool isChecked, bool updateContainer, bool synchWithSource, CheckedItemsCollectionOperation operation) { item.isChecked = isChecked; if (synchWithSource) { this.owner.listSourceFactory.UpdateSourceItemIsCheckedProperty(item); } this.owner.OnItemCheckedStateUpdatedCore(item, operation); if (updateContainer) { this.UpdateContainerVisualState(item); } }
/// <summary> /// Called when the checked state of a <see cref="DataSourceItem"/> changes. /// Allows for performing internal operations associated with checked state /// changes of the given item. /// </summary> /// <param name="item">The <see cref="DataSourceItem"/> which checked state has been changed.</param> /// <param name="operation">Determines the type of CheckedItemsCollection item operation.</param> internal virtual void OnItemCheckedStateUpdatedCore(DataSourceItem item, CheckedItemsCollectionOperation operation) { }