WPF不能正常格式化按钮和文本框
Posted
技术标签:
【中文标题】WPF不能正常格式化按钮和文本框【英文标题】:WPF not formatting button and text box normally 【发布时间】:2021-12-15 19:10:43 【问题描述】:我正在开发一个 WPF 应用程序,按照教程进行操作,我得到的结果与他的完全不同。我三重检查了我的代码,看它是否与教程人员的完全相同(确实如此),但我的按钮的格式与旁边的文本框不正确。我希望文本框占据屏幕底部的 75%,而按钮占据大约 25%。相反,按钮占 99%,文本框占 1%。教程人的文本框和按钮格式完美。我正在链接教程并在下面输入我的代码。作为参考,这家伙在使用 JetBrains Rider 时使用 Visual Studio。有谁知道可能导致问题的原因?
链接:https://youtu.be/FYB84gKCWAc?list=PL3g0PHY_11p4PD7Dt4X9KCLpOiyCsW8UD&t=262
<Window x:Class="Chatbot.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:Chatbot"
mc:Ignorable="d"
Title="Chatbot" Height="350" Width="525">
<Grid>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBox Grid.Row="0" Name="_tb_alpha" IsReadOnly="True"/>
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<TextBox Grid.Column="0" Name="_tb" MaxLength="50" />
<Button Grid.Column="1" Name="_btn" Content="Send" Click="_btn_OnClick"/>
</Grid>
</Grid>
【问题讨论】:
"这是我的代码,它与一些随机的 youtube 视频不同" ...不是一个有效的问题。解释你想要做什么(用语言),解释正在发生的事情,以及这与你的期望有何不同。如果您喜欢嵌入问题中,可以使用小图像,如果您喜欢,请对其进行注释 感谢您的解释!我是 *** 的新手,所以我不是最擅长提问的人。编辑它,希望它现在更有意义:) 【参考方案1】:这是您的问题的原因:
<ColumnDefinition Width="2"/>
视频使用了星号,你只是忘记了星号'*'
<ColumnDefinition Width="2*"/>
星形大小是某些 WPF 面板(例如网格)中的一个系统,用于让事物占据整个宽度的百分比。默认情况下,宽度为“1*”,因此 2* 是其两倍 -> 导致文本框大小为 75%,按钮大小为 25%(按钮列的默认宽度为 1*)。
目前,包含您的文本框的列仅设置为 2 像素。
【讨论】:
非常感谢!这解决了一切。你让我很开心!【参考方案2】:尝试以下方法:
将<ColumnDefinition Width="2"/>
更改为<ColumnDefinition Width="2*"/>
你错过了*
。
【讨论】:
以上是关于WPF不能正常格式化按钮和文本框的主要内容,如果未能解决你的问题,请参考以下文章