WPF:textbox / Combobox的内容超越了窗口屏幕

时间:2017-11-06 11:53:45

标签: c# wpf

我有一个显示特定路径的文本框/组合框,文本框和组合框都已设置为根据其内容更改大小。如果路径很长,它会超出窗口屏幕和"浏览按钮"我已经隐藏了。(为了清晰起见,请参考图片)。注意:我对文本和文本都有这个问题。组合框。

这是特定案例的片段:

<Label Content="_Layout Report Output Path:" Grid.Row="5" Target="{Binding ElementName=TxtLytRepPath}"/>
     <StackPanel Grid.Row="5" Grid.Column="1" Orientation="Horizontal">
        <ComboBox Name="CmbLytRepPath" Grid.Column="1" Text="{Binding LayoutReportPath, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" IsEditable="True" IsReadOnly="True"/>
        <Button Name="BtnLytRepPath" Style="{StaticResource BrowseButton}"/>
     </StackPanel>
</Label>

按钮样式:

<Style TargetType="Button" x:Key="BrowseButton">
     <Setter Property="Content" Value="..."/>
     <Setter Property="VerticalAlignment" Value="Center"/>
     <Setter Property="HorizontalAlignment" Value="Center"/>
     <Setter Property="Margin" Value="2"/>
     <Setter Property="MinHeight" Value="23"/>
     <Setter Property="Width" Value="40"/>
</Style>

enter image description here

我不能使用包装面板,因为它会使UI变坏。请给我一些解决方案。

1 个答案:

答案 0 :(得分:0)

在您的示例中,您关闭标签的两倍。

我想你会尝试使用dockpanel

    <DockPanel Grid.Row="5" Height="??? if need">
        <Label DockPanel.Dock="Left" Content="_xxx"/>
        <Button DockPanel.Dock="Right" Style=” ”/>
        <ComboBox />
    </DockPanel>

此致