我需要在WPF中进行标题结构预览。我已经研究过使用StackPanels和DockPanels,似乎无法准确掌握所需内容。我还需要一种编程方式来创建标头结构,因为它是根据用户提供的信息创建的。
我需要看起来像这样:
| ---------- ----------- Superheader | | -------- ---------头| -Header- | | -Subheader- | -Subheader- | -------- |
使用StackPanels和DockPanels的主要问题是它们只占用最小空间而不是填充以匹配超级头宽度。
任何帮助都将不胜感激。
答案 0 :(得分:0)
您是否考虑过使用DataGrid
控件(documentation)?
您可以创建一个类来保存标题。例如:
public class BiologicalClassification
{
public string Kingdom { get; set; }
public string Phylum { get; set; }
public string Class { get; set; }
public string Order { get; set; }
public string Family { get; set; }
public string Genus { get; set; }
public string Species { get; set; }
}
然后,您可以将所有标题数据存储在代码隐藏或视图模型的List<BiologicalClassification>
中。
然后,您可以使用绑定在DataGrid
中显示此数据:
<DataGrid ItemsSource="{Binding BiologicalClassifications}"
AutoGenerateColumns="False"
GridLinesVisibility="None">
<DataGrid.Columns>
<DataGridTextColumn Header="Kingdom" Binding="{Binding Kingdom}"/>
<DataGridTextColumn Header="Phylum" Binding="{Binding Phylum}" />
...
</DataGrid.Columns>
</DataGrid>
这将确保您的超级标头(在此示例中为Kingdom)始终为恒定宽度。与其余标题相同。