工具提示中带有日期的 WPF MVVM MahApps 范围滑块
WPF MVVM MahApps range slider with dates in tooltip
在 WPF MVVM 应用程序中使用以下 https://mahapps.com/docs/controls/rangeslider。目前工具提示显示的是数值,我希望改为显示日期。
我在下面的回答中找到了下面的转换器WPF Slider and dates
public class HourToDateConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
object result = DependencyProperty.UnsetValue;
if (value is double)
result = DateTime.Now.Date.AddHours((double)value);
return result;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
我已经能够成功获得 TextBlock
来显示日期范围,但是,我想在工具提示中显示相同的内容。
这可能吗?提前致谢。
尝试将 AutoToolTipTextConverter
属性 设置为转换器的实例 class:
<Grid>
<Grid.Resources>
<local:HourToDateConverter x:Key="HourToDateConverter" />
</Grid.Resources>
<Controls:RangeSlider x:Name="xxx"
Minimum="10"
Maximum="100"
AutoToolTipPlacement="TopLeft" AutoToolTipPrecision="2" MoveWholeRange="True"
IsSnapToTickEnabled="True" IsMoveToPointEnabled="True" ExtendedMode="True"
AutoToolTipTextConverter="{StaticResource HourToDateConverter}">
</Controls:RangeSlider>
</Grid>
在 WPF MVVM 应用程序中使用以下 https://mahapps.com/docs/controls/rangeslider。目前工具提示显示的是数值,我希望改为显示日期。
我在下面的回答中找到了下面的转换器WPF Slider and dates
public class HourToDateConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
object result = DependencyProperty.UnsetValue;
if (value is double)
result = DateTime.Now.Date.AddHours((double)value);
return result;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
我已经能够成功获得 TextBlock
来显示日期范围,但是,我想在工具提示中显示相同的内容。
这可能吗?提前致谢。
尝试将 AutoToolTipTextConverter
属性 设置为转换器的实例 class:
<Grid>
<Grid.Resources>
<local:HourToDateConverter x:Key="HourToDateConverter" />
</Grid.Resources>
<Controls:RangeSlider x:Name="xxx"
Minimum="10"
Maximum="100"
AutoToolTipPlacement="TopLeft" AutoToolTipPrecision="2" MoveWholeRange="True"
IsSnapToTickEnabled="True" IsMoveToPointEnabled="True" ExtendedMode="True"
AutoToolTipTextConverter="{StaticResource HourToDateConverter}">
</Controls:RangeSlider>
</Grid>