标签: wpftoolkit

WPF Toolkit Datagrid - 如何关闭选择?

我在WPF中有一个数据网格,我绑定到一个对象.

我有一个DataGridCheckBoxColumn,我希望用户能够通过并勾选他们想要的那些.问题是他们必须点击两次,一次选择然后再次检查/取消选中.你究竟怎么把它关掉,我一直在寻找方法来寻找答案.datagrid具有SelectionMode和SelectionUnit属性 - 两者都不接受'none'或'go away'

任何帮助表示赞赏!我的代码在下面供参考

<my:DataGrid Margin="15"  Name="dgPreview" 
        AutoGenerateColumns="False" CanUserSortColumns="True" 
             CanUserDeleteRows="True" 
             Background="White" 
             ColumnHeaderHeight="20" 
             VerticalScrollBarVisibility="Visible" 
             RowDetailsVisibilityMode="Visible" 
             >

    <my:DataGrid.Columns>
        <my:DataGridCheckBoxColumn  MinWidth="50" Width="Auto" Header="Include" Binding="{Binding Include}" />
        <my:DataGridTextColumn MinWidth="50"  Width="Auto" Header="Override #" Binding="{Binding OverrideNumber}" />
        <my:DataGridTextColumn MinWidth="220" Width="*" Header="Name" Binding="{Binding Name}" />
        <my:DataGridTextColumn MinWidth="50" Width="Auto" IsReadOnly="True"  Header="Preview" Binding="{Binding Preview}" />
    </my:DataGrid.Columns>
</my:DataGrid>
Run Code Online (Sandbox Code Playgroud)

c# wpf xaml datagrid wpftoolkit

12
推荐指数
1
解决办法
6881
查看次数

无法设置DataGridColumn的ToolTip

我尝试了以下方法:

<tk:DataGridTextColumn 
    Header="Item" 
    Binding="{Binding Item.Title}" 
    ToolTipService.ToolTip="{Binding Item.Description}" />
Run Code Online (Sandbox Code Playgroud)

我没有看到任何工具提示.

有任何想法吗?甚至实施了吗?

wpf datagrid wpftoolkit wpf-controls datagridcolumn

12
推荐指数
3
解决办法
1万
查看次数

WPF工具包:如何​​滚动数据网格以显示代码后面的选定项目?

我尝试了以下操作,所有这些都在函数ScrollIntoView上失败并给出NullReferenceException:

// doesn't work
grid.SelectedItem = sItem;
grid.ScrollIntoView(sItem);

// doesn't work
grid.SelectedItem = sItem;
grid.Focus();
grid.CurrentColumn = grid.Columns[0];
grid.UpdateLayout();
grid.ScrollIntoView(sItem,grid.Columns[0]);

// doesn't work
grid.SelectedItem = sItem;
grid.UpdateLayout();
grid.ScrollIntoView(sItem);
Run Code Online (Sandbox Code Playgroud)

问题是,当我从代码隐藏中选择一行时,选择是不可见的 - 它位于底部的某个位置.除非用户滚动,否则他们会觉得选择已经消失.我需要将DataGrid滚动到用户可以看到选择的程度.

我也试过"BringIntoView",但没有运气.

wpf datagrid scroll selection wpftoolkit

12
推荐指数
2
解决办法
2万
查看次数

使用绑定来控制DataGrid中的列顺序

问题

我有一个WPF工具包DataGrid,我希望能够在几个预设的列顺序之间切换.这是一个MVVM项目,因此列顺序存储在一个ViewModel.问题是,我无法获得为该DisplayIndex属性工作的绑定.无论我尝试什么,包括这个Josh Smith教程中的甜蜜方法,我得到:

带标题"ID"的DataGridColumn的DisplayIndex超出范围.DisplayIndex必须大于或等于0且小于Columns.Count.参数名称:displayIndex.实际值为-1.

这有什么解决方法吗?

我在下面提供了我的测试代码.如果您发现任何问题,请告诉我.


ViewModel代码

public class MainViewModel
{
    public List<Plan> Plans { get; set; }
    public int IdDisplayIndex { get; set; }
    public int NameDisplayIndex { get; set; }
    public int DescriptionDisplayIndex { get; set; }

    public MainViewModel()
    {
        Initialize();
    }

    private void Initialize()
    {
        IdDisplayIndex = 1;
        NameDisplayIndex = 2;
        DescriptionDisplayIndex = 0;
        Plans = new List<Plan>
        {
            new Plan { Id = 1, Name = "Primary", Description …
Run Code Online (Sandbox Code Playgroud)

data-binding wpf xaml mvvm wpftoolkit

12
推荐指数
2
解决办法
7733
查看次数

免费的WPF轮播实施

我见过很多旋转木马来展示WPF.我之前从未真正需要过.

有一个体面的免费吗?

我可以访问Dev Express,但是我正在制作一个开源项目,而不想把代码放在其他人不能轻易编译的代码中.

wpf wpftoolkit wpf-controls

11
推荐指数
1
解决办法
2万
查看次数

WPF Datagrid时间字段格式hh:mm

我使用带有LINQ to SQL的WPF Toolkit Datagrid

       <my:DataGrid AutoGenerateColumns="False" Name="dataGrid2">
        <my:DataGrid.Columns>
            <my:DataGridTextColumn Header="Date" MinWidth="80"
                                       Binding="{Binding Date, StringFormat=d}"
                                       CanUserSort="False"/>
            <my:DataGridTextColumn Header="Time"  MinWidth="70" 
                                       Binding="{Binding Time}"
                                       CanUserSort="False" />
            <my:DataGridTextColumn Header="Description" MinWidth="200"
                                       Binding="{Binding Description}" 
                                       CanUserSort="False"/>
        </my:DataGrid.Columns>
    </my:DataGrid>
Run Code Online (Sandbox Code Playgroud)

Time绑定到Time数据类型的SQL Server表字段.现在,Datagrid上的时间值以hh:mm:ss格式显示.

我怎样才能将Datagrid的Time列中的时间represantation更改为hh:mm,删除秒?

编辑:使用 StringFormat=t没有结果.

<my:DataGridTextColumn Header="Time"  MinWidth="70" 
                                       Binding="{Binding Time, StringFormat=t}"
                                       CanUserSort="False" />
Run Code Online (Sandbox Code Playgroud)

wpf datagrid wpftoolkit

11
推荐指数
2
解决办法
2万
查看次数

是否评估了DependencyProperties绑定的顺序?

是什么决定了同一控件上多个DepdencyProperties的评估顺序?

我正在使用Extended WPF Toolkit PropertyGrid并且绑定了SelectedObject和PropertyDefinitions:

<extToolkit:PropertyGrid AutoGenerateProperties="False" SelectedObject="{Binding ActiveDataPoint}" PropertyDefinitions="{Binding ActiveDataPoint.Properties}">
Run Code Online (Sandbox Code Playgroud)

问题是OnSelectedObjectChanged从依赖项属性触发,并且在该更改的处理程序中它引用了PropertyDefinitions,它被视为null.如果我注释掉OnSelectedObjectChanged处理程序,那么我可以看到调试OnPropertyDefinitionsChanged时调用OnSelectedObjectChanged.

public static readonly DependencyProperty PropertyDefinitionsProperty = DependencyProperty.Register( "PropertyDefinitions", typeof( PropertyDefinitionCollection ), typeof( PropertyGrid ), new UIPropertyMetadata( null, OnPropertyDefinitionsChanged ) );
public PropertyDefinitionCollection PropertyDefinitions
{
  get
  {
    return ( PropertyDefinitionCollection )GetValue( PropertyDefinitionsProperty );
  }
  set
  {
    SetValue( PropertyDefinitionsProperty, value );
  }
}

private static void OnPropertyDefinitionsChanged(DependencyObject o, DependencyPropertyChangedEventArgs e)
{
    Console.Write("I changed!");
}

public static readonly DependencyProperty SelectedObjectProperty = DependencyProperty.Register( "SelectedObject", typeof( object ), typeof( PropertyGrid ), new …
Run Code Online (Sandbox Code Playgroud)

c# wpf xaml dependency-properties wpftoolkit

11
推荐指数
2
解决办法
2603
查看次数

是否可以在wpf中重新排列选项卡控件中的选项卡项?

是否可以在运行时重新排列选项卡控件中的选项卡项?例如,我有3个关于汽车的标签项目和关于房子的4个标签.我希望能够使用拖放重新排列它们.它有可能还是它太棒了?

我有Tab Control这里是XAML.

<TabControl x:Name="tc" Visibility="Collapsed" GotFocus="Focus" AllowDrop="True" >
            </TabControl>
Run Code Online (Sandbox Code Playgroud)

选项卡项将在运行时添加.谢谢你的帮助!

wpf wpftoolkit wpf-controls

11
推荐指数
1
解决办法
1万
查看次数

如何隐藏wpf工具包datagrid中的单元格边框?

我想在wpf toolkit datagrid中隐藏单元格的边框(比如WPF网格的ShowGridLine属性).

我怎样才能实现这种行为?

wpftoolkit c#-3.0

10
推荐指数
1
解决办法
4149
查看次数

DateTimePicker wpf工具包绑定

如何在WPF Toolkit或扩展Toolkit的DateTimePicker中绑定Selected DateTime,因为我找不到SelectedDateTime属性?

我猜我可能需要将它与' Value '属性绑定,但我不确定.没有可用的文档.

我正在使用MVVM.

wpf binding wpftoolkit datetimepicker

10
推荐指数
1
解决办法
1万
查看次数