WPF:如何使控件在 StackPanel 中拉伸?

2024-01-02

当放置在 StackPanel 中时,Slider 和一些其他控件不会拉伸以填充可用空间;相反,宽度始终为 MinWidth(如果未设置 MinWidth,则约为 10 像素)。如何使其拉伸(相当于 WinForms 中的 Anchor.Left|Anchor.Right)?例子:

<StackPanel DockPanel.Dock="Bottom" Orientation="Horizontal">
    <Slider Value="14" SmallChange="0.5" Maximum="100" Minimum="4" 
            x:Name="FontSize" MinWidth="30" LargeChange="2" 
            TickFrequency="10" TickPlacement="TopLeft" 
            HorizontalAlignment="Stretch"/>
    <TextBlock Margin="8" Text="{Binding ElementName=FontSize, Path=Value}" 
               VerticalAlignment="Center"/>
</StackPanel>

你需要 DockPanel 来代替:

<DockPanel DockPanel.Dock="Bottom" LastChildFill="True">
    <TextBlock DockPanel.Dock="Right" ... />
    <Slider ... />
</DockPanel>

DockPanel 为您提供您想要的“锚点”功能。 StackPanel 只是将事物彼此相邻堆叠。

我从您的代码块中注意到您的 StackPanel 已经停靠在停靠面板内,因此我在上面的代码示例中包含了相同的停靠属性。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WPF:如何使控件在 StackPanel 中拉伸? 的相关文章

随机推荐

  • CSS 动画 - 从中​​心增长(从中心点缩放到整个容器)

    我正在开发一款游戏 我想为一些盒子制作动画 我想要一个盒子从小处开始 然后向外生长 所有边缘同时生长 看起来就像从中心向外生长的效果 到目前为止 我拥有的最好的动画如下 它根据我的需要增加盒子的高度和宽度 但从左侧和顶部开始 我希望它从一个
  • PHP:Excel 无法打开文件,因为文件格式或文件扩展名无效

    当我尝试打开从应用程序下载的 xls 文件时 出现此错误 Excel 无法打开该文件 因为文件格式或文件扩展名无效 验证文件未损坏并且文件扩展名与文件格式匹配 这是我的 php 代码 首先 我上传 xls 文件 if is uploaded
  • 命令 vue init 需要全局插件

    当我尝试vue init webpack test app 我收到以下错误 Command vue init requires a global addon to be installed Please run npm install g
  • fs.readdir 忽略目录

    我想扫描该文件夹 但忽略其中包含的所有文件夹 目录 我在 C folder 中只有 txt文件和其他文件夹 我只想扫描txt文件 并忽略文件夹 app get generatE function req res const logsFold
  • 使用 TFS + git 设置 Xamarin Studio 版本控制

    我正在设置Xamarin with 团队基础服务 git开发 iOS 应用程序 我尝试了许多不同的设置 试图在 MAC 上设置 TFS git 集成 但没有成功 我不断收到其中任何一个的例外情况not authorized or faile
  • 在最新版本的 Notepad++ 中排序不区分大小写

    如何在最新版本的 Notepad 即 gt 6 5 中进行不区分大小写的排序 我知道使用 TextFX 的旧方法 但是 Notepad 现在具有内置的 行操作 但这些似乎区分大小写 您仍然可以使用TextFX 角色Notepad 最新版本中
  • Rails 3 覆盖 Devise 会话控制器

    我需要在登录过程中覆盖 Devise 会话控制器 Rails 3 0 9 Ruby 1 9 2 Devise 1 3 4 我尝试过但没有任何效果 class SessionsController lt Devise SessionsCont
  • Node-webkit 应用程序 - 如何更新它?

    我正在使用 node webkit 为我的学生开发应用程序 并提供一站式解决方案 我需要每月更新一次 node webkit 存档 我有办法做到这一点吗 基本上我每个月只需要替换一个 html 文件 比如 page1 html 我用谷歌搜索
  • 为什么 Java 的序列化比第 3 方 API 慢?

    在处理套接字和序列化对象时 我注意到有一些第三方库可以在 Java 上实现更快的对象序列化 例如Kryo http code google com p kryo and FST http code google com p fast ser
  • “spring-boot-maven-plugin”重新打包后,“Implementation-Version”不在清单中

    在 Maven 中给出这个插件配置pom xml
  • asmx Web 服务、json、javascript/jquery?

    我正在使用 asmx 从数据库检索一些数据 public class TestPage1 public int UserID get set public string UserName get set public string Pass
  • 函数中的引用如何工作?

    首先 我编写了第一个代码示例 但它无法正常工作 我更喜欢第一个示例 但只有第二个示例可以正常工作 我不知道为什么第一个样本没有改变原始数组 但第二个样本却改变了 差别在哪里呢 第一个样本 import heapq def heap sort
  • WPF进度条样式是块状的?

    我在应用程序中使用不确定的进度条 并且得到了一系列水平运行的块的糟糕动画 难道没有更好的风格可用 例如 vista 或 windows 7 吗 您的进度条具有与当前 Windows 主题相对应的样式 如果您在带有 Aero 主题的 Wind
  • 显示:内联边距、填充、宽度、高度

    如果我设置display inline对于任何元素 那么将margin padding width height不影响该元素 是否有必要使用float left or display block or display inline bloc
  • 是否可以在线检索 Dynamics CRM 中的架构更改信息?

    创建自定义实体 添加或更改字段时 有人会对元数据进行开箱即用的更改 如何知道是谁以及何时做的 从 UI 表单创建或修改也是如此 CRM 中的元数据似乎不存储该信息 我认为无法访问您所要求的信息 本地 CRM 数据库中没有此类信息 我想 CR
  • Mercurial:在一个存储库中的分支之间合并一个文件

    当我在 Hg 存储库中有两个分支时 如何仅将一个文件与另一个分支合并 而不合并变更集中的所有其他文件 是否可以仅合并某些文件 而不是整个变更集 警告 虚拟合并 原样 Martin Geisler 推荐 https stackoverflow
  • 在TFS中构建一组特定项目

    有谁知道如何配置 TFS Build 以在解决方案中构建一组项目 我的解决方案有 16 个项目 但对于我的构建定义之一 我希望编译其中的一些项目 我认为最简单的方法是创建一个新的解决方案文件 没有什么可以阻止您拥有引用相同项目 或某个子集
  • Webpack 导入 font-awesome 库时出现问题

    我正在构建一个 React 应用程序 需要导入 font awesome CSS 但我收到一条错误消息 指出该模块无法解析 woff2 文件 下面是我的代码 import React from react import ReactDOM f
  • chromes“appendChild”真的那么慢吗?

    我有一个框架 可以完全使用以下方式生成应用程序的 DOMdocument createElement and document appendChild 现在应用程序变得越来越大 我注意到 Chrome 需要比其他浏览器更长的时间来构建 DO
  • WPF:如何使控件在 StackPanel 中拉伸?

    当放置在 StackPanel 中时 Slider 和一些其他控件不会拉伸以填充可用空间 相反 宽度始终为 MinWidth 如果未设置 MinWidth 则约为 10 像素 如何使其拉伸 相当于 WinForms 中的 Anchor Le