首先檢查this link,瞭解如何使用轉換器。
然後在你的XAML,寫你的邊界這樣
<Border BorderBrush="{Binding Converter=ColorConverter}">
....
<Border>
修改您的轉換代碼是這樣的
public class ColorConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
//Define some random colors
Color[] colors = { Colors.Blue, Colors.Brown, Colors.Cyan, Colors.Green, Colors.Magenta, Colors.Orange, Colors.Purple, Colors.Yellow, Colors.LightGray };
return colors[(new Random()).Next(8)];
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
}
}
所以,這段代碼動態返回顏色之一。並且有機會持續獲得相同的顏色。順便說一句,我沒有測試上面的代碼。