问题标签 [sharedsizegroup]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wpf - 在 ItemsControl 的项目中的网格之间共享列宽
我正在编写一个控件来显示和编辑表单中的对象。控件 ( FormDataView
) 是一个ItemsControl
,其中每个项目都是一个FormField
由 组成的控件Grid
,字段名称在左列,编辑器(例如 TextBox)在右列。为了对齐编辑器,我希望每个Grid
中的第一列共享相同的宽度。
所以我尝试使用IsSharedSizeScope
and SharedSizeGroup
,但它不起作用,第一列在每个FormField
.
以下是这些控件的样式:
Notice how Grid.IsSharedSizeScope
is set in the ItemsPanel
of FormDataView
, while SharedSizeGroup
is set in the template of FormField
. This correctly expresses what I want to do: each FormField
should use the same width for the first column. However, according to the documentation for the SharedSizeGroup
property, this scenario is not supported:
Grid size-sharing does not work if you set IsSharedSizeScope to true within a resource template and you define SharedSizeGroup as outside that template.
OK, so I can understand why it doesn't work... but I don't know how to work around this limitation.
Any idea?
N.B.: I don't want to assign a fixed width to the first column of course...
wpf - Grid SharedSizeGroup - 列弹跳,无限循环调整大小
我需要带有水平和垂直标题的表格(简单的 PivotGrid)。我在这里发现了一些类似(或几乎相同)的问题,但没有人给出解决方案。在 XAML 中,我定义了这个结构:
所以两个标题都由带有一些ColumnDefinitions(resp.RowDefinitions)的网格组成,我需要根据Content-ColumnDefinitions来调整Header-ColumnDefinitions的大小。我在代码中这样做:
所以 Header-Column 应该与 Content-Column 共享它的 Width。但是当我运行程序时,列在无限循环中弹跳和调整大小。行的高度共享工作正常。问题可能出在哪里?
仅编辑标题 (grdHorizontalHeader) 中的列正在调整大小。grdContent 中的列具有正确且稳定的宽度。
wpf - ItemsControl 中的 ListView 是否有等效的 SharedSizeGroup?
我使用一个 ItemsControl 代表国家。对于每个国家,我使用 ListView 来显示其城市:
结果:
我需要每当用户更改第一个列表视图中的列宽时,第二个会相应地调整其宽度(类似于网格的SharedGroupSize)。
我怎样才能做到这一点?
.net - 带有 ItemsControl 嵌入式网格的 SharedGridSize 组
我正在尝试使用 an 在另一个网格中嵌入多个网格,ItemsControl
并让所有子网格共享相同的行高:
CustomControl 实际上是一个自定义的 Grid ,如下所示:
但是子网格中的行不共享相同的大小?
wpf - GridSplitter 卡住了
我在多次拖动后遇到问题(最初似乎工作正常,您还必须在每次拖动之间释放鼠标按钮),网格拆分器似乎卡住并且不允许您再拖动它,或者有时它会只拖了几英寸,然后又卡住了。
我使用的代码实际上是在 ItemTemplate 中,但为了演示问题,我提取了下面的问题代码。
(复制并粘贴 Grid 元素,以便在堆栈面板中有几个,我发现当您至少有 10 个网格时,gridsplitter 会更快地卡住)。
因此,如上所述,如果您尝试多次调整大小(在每次拖动之间释放鼠标按钮),在 5-10 次调整大小后,拆分器似乎卡住了,至少对我来说是这样。
当您尝试向左拖动时,它似乎也只会卡住。
wpf - 带有 SharedSizeGroup 和拉伸的 ItemsControl
显然,当使用 SharedSizeGroup 时,您不能使用星号 (*)。此处已对此进行了讨论: Grid's SharedSizeGroup and * sizing
不幸的是,在那次讨论中,他们并没有真正为问题提供可行的解决方案。
我想显示一个控件列表,每行一个控件,布局如下:
(名称)(输入文本框)(X 按钮)
它应该如下所示:
但相反,我得到
第 1 列的宽度应与最长的单词一样宽。第 2 列,即输入文本框,应拉伸以填充所有剩余空间 (*),但这不适用于前面讨论的 SharedSizeGroup。* 被视为自动,因此不拉伸。
有任何想法吗?这是 XAML:
c# - SharedSizeGroup 到不同父控件中的不同网格
所以,我有 3 个用户控件:
1. SectionV.xaml
2. BarV.xaml
3. NotationGroupV.xaml
如您所想,NotationGroupV
是UserControl
in的集合BarV
,BarV
并由SectionV
两个 of 拥有。(SectionV
也用作其父控件的集合成员)
问题在于 的中心行高度NotationGroupV
,它具有SharedSizeGroup="Mid"
。我想把它分享给NotationGroupV
应用程序中的伙伴。
所以,基本上,我想分享SharedSizeGroup
给NotationGroupV
不同父母的其他人。
有谁知道如何暴露SharedSizeGroup
这种方式?
(请问有什么要澄清的)
谢谢你。
PS 在这个链接中,它解释了如何在不同的网格中共享它们,但在同一个 xaml 中。
c# - 在 WPF 和 c# 中以编程方式设置、删除或覆盖 SharedSizeGroup
因此,我通过 XAML 将 SharedSizeGroup 设置为 WPF 中网格上的 2 列,但我想知道是否有办法通过 C# 中的代码删除并重新设置或覆盖该属性?
我已经知道在创建时将此属性应用于列/行的代码,但我不想创建或删除新的列/行。我只需要编辑现有属性的属性。
c# - ListBox 滚动条使用 Grid.IsSharedSizeScope 中断同步列
我需要显示一个带有标题的表格ListBox
我在网上搜索了如何创建它,我找到了这个答案,这是我创建的 XAML 代码:
这是我创建的用于测试和填充ListBox
由于ListBox
只显示 4 行,因此不必设置滚动条,并且表头与表格列几乎 100% 对齐:
当我向 中添加更多行ListBox
并且出现滚动条时,问题会变得更糟:
如您所见,每列的偏移量及其标题太大。我怎么Grid.IsSharedSizeScope
知道滚动条的宽度并将其考虑到标题宽度?我需要的是让表格列与表格标题 100% 对齐。