Telerik WPF RadGantt查看截面宽度

本文关键字:截面 WPF RadGantt Telerik | 更新日期: 2023-09-27 18:21:07

我需要在Telerik WPF RadGanttView控件中拉伸一个图表和一个网格,以获得完整的窗口宽度。但无论如何,图表宽度保持336个单位,网格保持105个单位。没有属性影响它。代码是:

<telerik:RadGanttView Grid.Row="1"                  HorizontalAlignment="Stretch" Margin="8,0,6,20" VerticalAlignment="Stretch" 
             TasksSource="{Binding GanttTasks}" Background="{DynamicResource backgroundBrush}" BorderBrush="{DynamicResource BorderBrush}"/>

请告诉我如何将实际宽度增加到整个窗口。

Telerik WPF RadGantt查看截面宽度

要为其他处理此问题的人提供更多信息。。。

  • RadGanttView默认只显示7天的信息
  • 这被定义为控件的VisibleRange
  • 控件的TimeRuler部分仅扩展到足以显示VisibleRange的宽度
  • 如果VisibleRange比可用的显示区域宽,您可以按预期水平滚动,一切看起来都很好
  • 如果VisibleRange比可用的显示区域窄,则控件的TimeRuler部分右侧会出现一个空白,当窗口最大化时,这看起来特别糟糕

要使控件的TimeRuler部分扩展为使用可用显示区域,必须将控件上的VisibleRange属性设置为足够高的值,以扩展到可用显示区域之外(例如30多天等)

您可以将VisibleRange属性添加到视图模型中,并在视图模型构造函数中设置开始/结束日期(或任何对您有意义的地方):

VisibleRange = new VisibleRange
{
    Start = DateTime.Today,
    End = DateTime.Today.AddDays(60)
};

然后,您可以将RadGanttView上的VisibleRange属性绑定到刚刚添加到视图模型中的VisibleRange属性:

<telerik:RadGanttView x:Name="GanttView" TasksSource="{Binding Tasks}" VisibleRange="{Binding VisibleRange}" />

不确定这里是否还需要答案,所以我会很快:您需要更改PixelLength。这是一个时间跨度,您希望它等于右部分视口中的像素数除以项目的长度。