WPF新建项问题?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WPF新建项问题?相关的知识,希望对你有一定的参考价值。
我在wpf应用程序里新建了个类库,为什么在该类库下不能新建wpf的东西?比如自定义控件,资源词典等等。新建项里没有这些!请高手解答。
如果你要创建自定义控件,资源词典等等的,应该将它们放在WPFapplication下面啊。类库一般只放cs文件的。 参考技术A 你应该新建WpfCustomControlLibrary类型的项目,它和ClassLibrary有一定区别。追问有WpfCustomControlLibrary吗?怎么创建
唉 ,还是创建wpfApplication把
有WpfCustomControlLibrary吗?怎么创建
唉 ,还是创建wpfApplication把
怎么没有啊,和ClassLibrary是平行的。
参考技术B 左侧已安装模板选WPF,只能新建用户控件。 参考技术C 你应该新建的是资源字典吧C# WPF - 选定项文本被剪切
【中文标题】C# WPF - 选定项文本被剪切【英文标题】:C# WPF - Selected Item text is cut 【发布时间】:2021-09-12 11:34:19 【问题描述】:ComboBox 的 SelectedItem 中的文本被剪切。 在示例中“手动加载”---->>“手动加载” 我尝试在模板中设置 Margin=0 和 Padding=0 (如本主题“https://***.com/questions/48291742/c-sharp-wpf-combobox-selected-item-text-cut-off ") 但没有任何效果
我的组合框
<ComboBox x:Name="cmbLoad" Padding="5,0,0,0" Grid.Column="1" ItemTemplate="StaticResource ResourceKey=Id_Name_Template" SelectionChanged="Cmb_Load_SelectionChanged" HorizontalAlignment="Stretch" HorizontalContentAlignment="Left"/>
我的模板
<DataTemplate x:Key="Id_Name_Template" >
<StackPanel >
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Margin="0" Padding="0" VerticalAlignment="Center">
<Run FontWeight="Bold" Text="Binding Id"/>
</TextBlock >
<TextBlock Grid.Column="1" Text="-" Margin="5,0,5,0" Padding="0"/>
<TextBlock Grid.Column="2" Margin="0" Padding="0" VerticalAlignment="Center" FontStyle="Italic" Text="Binding Name" />
</Grid>
</StackPanel>
</DataTemplate>
结果
【问题讨论】:
【参考方案1】:去掉StackPanel
,设置ColumnDefinitions
的Width
:
<DataTemplate x:Key="Id_Name_Template" >
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Margin="0" Padding="0" VerticalAlignment="Center">
<Run FontWeight="Bold" Text="Binding Id"/>
</TextBlock >
<TextBlock Grid.Column="1" Text="-" Margin="5,0,5,0" Padding="0"/>
<TextBlock Grid.Column="2" Margin="0" Padding="0" VerticalAlignment="Center" FontStyle="Italic" Text="Binding Name" />
</Grid>
</DataTemplate>
【讨论】:
“摆脱 StackPanel” 解决了我 90% 的 WPF 格式问题。【参考方案2】:您可以改用StackPanel
:
<DataTemplate x:Key="Id_Name_Template" >
<StackPanel Orientation="Horizotnal">
<TextBlock Text="Binding Id" FontWeight="Bold"/>
<TextBlock Text=" - "/>
<TextBlock Text="Binding Name" FontStyle="Italic"/>
</StackPanel>
</DataTemplate>
或者只是 Run
s 在 TextBox
本身:
<DataTemplate x:Key="Id_Name_Template" >
<TextBlock VerticalAlignment="Center">
<Run Text="Binding Id" FontWeight="Bold"/><Run Text=" - "/><Run Text="Binding Name" FontStyle="Italic"/>
</TextBlock>
</DataTemplate>
【讨论】:
以上是关于WPF新建项问题?的主要内容,如果未能解决你的问题,请参考以下文章
wpf我在第一个窗体后新建了一个窗体,要怎么弄才能使程序运行时先显示我新建的那个窗体?