. 아래는 내가 느끼는 더 간단한 방법이며 코드에서보다 많은 제어를 제공하고 xaml에서 최소한의 변경 만 필요합니다. 그것은 xaml을 멋지고 깨끗하게 유지 시켜서 정말 간단한 행동이어야합니다.
바운드 개체에
public string BackColor { get; set; }
바인딩 속성을에 "의 BackColor"(또는 다른 문자열)를 추가하는 배경이나 스택 패널 또는 테두리 색상의 같은 귀하의 XAML에 뭔가 재산 국경, 시각적 인 변화를 선물 할 무언가. 예 : 당신의 긴 목록 선택 코드 "인 selectionchanged"이벤트에서
<StackPanel Orientation="Horizontal" Background="{Binding BackColor}">
SelectionChangedEventArgs 전자에서 AddedItems 및 RemovedItems 모음을 사용하여 바인딩 된 객체
if (e.AddedItems.Count > 0)
{
if (e.AddedItems[0] != null)
{
oMyObject = (MyServices.MyObjectDao)e.AddedItems[0];
oMyObject.BackColor = "Red";
}
}
if (e.RemovedItems.Count > 0)
{
if (e.RemovedItems[0] != null)
{
oMyObject = (MySercvices.MyObjectDao)e.RemovedItems[0];
oMyObject.BackColor = "Black";
}
}
당신은 예에서와 같이 간단한 색상을 사용할 수있는 업데이트
, 또는 xaml에서 사전 정의 된 색상을 사용할 수 있습니다.