我想在定義DataGrid的寬度時包含VerticalScrollbar的大小。 到目前爲止,我寫了一個轉換器:如何將DataGrid寬度綁定到轉換器?
[ValueConversion(typeof(double), typeof(double))]
public class VerticalScrollbarConverter : IValueConverter
{
#region IValueConverter Member
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (value is double)
return (double)value + SystemParameters.VerticalScrollBarWidth;
else
return value;
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
throw new NotImplementedException();
}
#endregion
}
我包括我與XAML命名空間轉換器:
xmlns:Core="clr-namespace:Core;assembly=SMS_Core"
我所定義的轉換器作爲(窗口)資源:
<Window.Resources>
<Core:VerticalScrollbarConverter x:Key="VerticalScrollbarConverter"/>
</Window.Resources>
由於我所有的DataGrid.Columns都有一個固定的值,我知道我需要通過的值。 如何告訴我在xaml中的GridView Width屬性使用轉換器?
我知道我的問題是非常基本的。正如你所看到的,我對WPF非常陌生。
在此先感謝您的每一個提示。如果您需要更多信息或背景信息,請提出問題。
您可以在Binding中使用StaticResource關鍵字,例如:'Width =「{Binding TheWidth,Converter = {StaticResource VerticalScrollbarConverter}}'' –
是的!這正是我需要的!非常感謝你! – Mathew
沒問題,很高興幫助:) –