使用转换器从 System.Windows.SystemParameters.PrimaryScreenWidth 进行 WPF 绑定

2024-03-19

我试图将 System.Windows.SystemParameters.PrimaryScreenWidth 绑定到 ColumnDefinition 的(来自“Grid”内)宽度属性,并使用转换器将“PrimaryScreenWidth”转换为“GridLength”。但它永远不会进入“转换”代码内部。

这是我的 XAML:

<Window.Resources>
   <local:ScreenWidthToLeftBarWidth x:Key="leftBarConverter" />
</Window.Resources>
<ColumnDefinition Width="{Binding ElementName=System.Windows.SystemParameters, Path=PrimaryScreenWidth, Converter={StaticResource leftBarConverter}}"/>

这是我的转换器的 CodeBehind(省略了“ConvertBack”方法:

public class ScreenWidthToLeftBarWidth : IValueConverter
    {
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            double aValue = (double)value;
            GridLength newWidth = new GridLength(aValue);
            return (newWidth);
        }
    }

现在,我已经能够在使用“按钮”对象宽度并通过转换器运行它的稍微不同的场景中成功绑定,所以我认为问题在于我如何尝试从“ElementName”进行绑定=系统.Windows.系统参数”。任何帮助表示赞赏,谢谢。


ElementName用于 XAML 中的其他元素;为此你需要类似的东西x:Static http://msdn.microsoft.com/en-us/library/ms742135.aspx, e.g.

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

使用转换器从 System.Windows.SystemParameters.PrimaryScreenWidth 进行 WPF 绑定 的相关文章

  • 适合初学者的良好调试器教程[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 有谁知道一个好的初学者教程 在 C 中使用调试器 我感觉自己好像错过了很多 我知道怎么做 单步执行代码并查看局部变量 虽然这常常给我带来问
  • 如何捕获未发送到 stdout 的命令行文本?

    我在项目中使用 LAME 命令行 mp3 编码器 我希望能够看到某人正在使用什么版本 如果我只执行 LAME exe 而不带参数 我会得到 例如 C LAME gt LAME exe LAME 32 bits version 3 98 2
  • 在c#中执行Redis控制台命令

    我需要从 Redis 控制台获取 客户端列表 输出以在我的 C 应用程序中使用 有没有办法使用 ConnectionMultiplexer 执行该命令 或者是否有内置方法可以查找该信息 CLIENT LIST是 服务器 命令 而不是 数据库
  • XAML 构建的本地 TFS 到 VSTS 迁移

    目前 我们在本地使用 TFS 2017 update 1 但我们必须在 VSTS 云平台上迁移 TFS 此外 我们还使用自定义构建模板在本地使用 TFS 构建服务器进行 XAML 构建 我们的问题是迁移后所有 XAML 构建定义是否都能正常
  • 如何判断计算机是否已重新启动?

    我曾经使用过一个命令行 SMTP 邮件程序 作为试用版的限制 它允许您在每个 Windows 会话中最多接收 10 封电子邮件 如果您重新启动计算机 您可能还会收到 10 个以上 我认为这种共享软件破坏非常巧妙 我想在我的应用程序中复制它
  • 为什么在 WebApi 上下文中在 using 块中使用 HttpClient 是错误的?

    那么 问题是为什么在 using 块中使用 HttpClient 是错误的 但在 WebApi 上下文中呢 我一直在读这篇文章不要阻止异步代码 https blog stephencleary com 2012 07 dont block
  • C# 数据表更新多行

    我如何使用数据表进行多次更新 我找到了这个更新 1 行 http support microsoft com kb 307587 my code public void ExportCSV string SQLSyntax string L
  • 从客户端访问 DomainService 中的自定义对象

    我正在使用域服务从 Silverlight 客户端的数据库中获取数据 在DomainService1 cs中 我添加了以下内容 EnableClientAccess public class Product public int produ
  • Python 属性和 Swig

    我正在尝试使用 swig 为一些 C 代码创建 python 绑定 我似乎遇到了一个问题 试图从我拥有的一些访问器函数创建 python 属性 方法如下 class Player public void entity Entity enti
  • 识别 Visual Studio 中的重载运算符 (c++)

    有没有办法使用 Visual Studio 快速直观地识别 C 中的重载运算符 在我看来 C 中的一大问题是不知道您正在使用的运算符是否已重载 Visual Studio 或某些第三方工具中是否有某些功能可以自动突出显示重载运算符或对重载运
  • 打破 ReadFile() 阻塞 - 命名管道 (Windows API)

    为了简化 这是一种命名管道服务器正在等待命名管道客户端写入管道的情况 使用 WriteFile 阻塞的 Windows API 是 ReadFile 服务器已创建启用阻塞的同步管道 无重叠 I O 客户端已连接 现在服务器正在等待一些数据
  • 如何在 C 中安全地声明 16 位字符串文字?

    我知道已经有一个标准方法 前缀为L wchar t test literal L Test 问题是wchar t不保证是16位 但是对于我的项目 我需要16位wchar t 我还想避免通过的要求 fshort wchar 那么 C 不是 C
  • 高效列出目录中的所有子目录

    请参阅迄今为止所采取的建议的编辑 我正在尝试使用 WinAPI 和 C 列出给定目录中的所有目录 文件夹 现在我的算法又慢又低效 使用 FindFirstFileEx 打开我正在搜索的文件夹 然后我查看目录中的每个文件 使用 FindNex
  • 检测到严重错误 c0000374 - C++ dll 将已分配内存的指针返回到 C#

    我有一个 c dll 它为我的主 c 应用程序提供一些功能 在这里 我尝试读取一个文件 将其加载到内存 然后返回一些信息 例如加载数据的指针和内存块的计数到 c Dll 成功将文件读取到内存 但在返回主应用程序时 程序由于堆损坏而崩溃 检测
  • 使 Guid 属性成为线程安全的

    我的一个类有一个 Guid 类型的属性 该属性可以由多个线程同时读写 我的印象是对 Guid 的读取和写入不是原子的 因此我应该锁定它们 我选择这样做 public Guid TestKey get lock testKeyLock ret
  • 将数组作为参数传递

    如果我们修改作为方法内参数传递的数组的内容 则修改是在参数的副本而不是原始参数上完成的 因此结果不可见 当我们调用具有引用类型参数的方法时 会发生什么过程 这是我想问的代码示例 using System namespace Value Re
  • 在 Windows Phone silverlight 8.1 上接收 WNS 推送通知

    我有 Windows Phone 8 1 silverlight 应用程序 我想使用新框架 WNS 接收通知 我在 package appxmanifest 中有
  • 这个可变参数模板示例有什么问题?

    基类是 include
  • 可访问性不一致:参数类型的可访问性低于方法

    我试图在两个表单之间传递一个对象 基本上是对当前登录用户的引用 目前 我在登录表单中有一些类似的内容 private ACTInterface oActInterface public void button1 Click object s
  • 堆栈是向上增长还是向下增长?

    我在 C 中有这段代码 int q 10 int s 5 int a 3 printf Address of a d n int a printf Address of a 1 d n int a 1 printf Address of a

随机推荐

  • 如何检查可见 DOM 中是否存在元素?

    如何在不使用getElementById method 我已经设置了一个现场演示 http jsbin com apawi5 3以供参考 我还将在这里打印代码
  • 如何在 python 中实现“#ifdef”?

    编程于C我曾经有代码部分仅用于调试目的 记录命令等 通过使用这些语句可以完全禁用生产 ifdef预处理器指令 如下所示 ifdef MACRO controlled text endif MACRO 做类似事情的最好方法是什么python
  • 神经网络立即过拟合

    我有一个带有 2 个隐藏层的 FFNN 用于几乎立即过拟合的回归任务 epoch 2 5 取决于 个隐藏单元 ReLU Adam MSE 每层相同的隐藏单元数 tf keras 32 个神经元 128 个神经元 我将调整隐藏单元的数量 但为
  • Q_PROPERTY:成员与读/写

    我正在阅读 Qt 5 5 关于 Q PROPERTY 宏的文档 但我不能很好地理解它 据我所知 您可以在此宏中使用关键字 MEMBER 或访问器 READ WRITE 来代替 如果您使用关键字 MEMBER 则不必编写访问器 因为您可以使用
  • 如何重新编译Google Drive API sdk?

    这是我们的问题 如何在dotnet中重新编译Google Drive api sdk gt 我们没有找到源代码 gt 在二进制包中 有一个源文件未随项目一起提供 我们不知道如何处理它 提问原因 在 dotnet 中 我们无法使用从 Goog
  • mysqlnd_ms 错误 - getaddrinfo 失败,mysqlnd_global_stats 未知

    我正在尝试设置 mysqlnd ms 以便它达到在从属数据库上读取和在主数据库上写入的目的 但是 当 httpd 重新启动时 我收到此错误 PHP Warning PHP Startup Unable to load dynamic lib
  • ASP.NET Core 中的 IHttpActionResult 和辅助方法

    我正在尝试将我的 web api 2 项目移动到 ASP NET 5 但我有很多不再存在的元素 例如IHttpActionResult or Ok NotFound 方法 或者RoutePrefix 我应该改变每一个IHttpActionR
  • VS2005中如何将静态库项目转换为dll项目

    当我在vs2005中创建一个项目时 我还可以创建 Win32 gt Win32Project 我可以选择 控制台应用程序 或 dll 或 静态库 如果我创建了一个静态库项目 我怎样才能将它转换为dll项目 我在创建的项目的设置面板中找到了
  • MySQL系统数据库表可以转换为InnoDB吗?

    我最近安装了MySQL 5 5 我在用着InnoDB作为我所有数据库的引擎 我注意到mysql数据库默认值及其所有表 用户 数据库等 都是MyISAM 有什么理由他们不能 不应该InnoDB 有谁知道 MySQL 是否需要mysql数据库是
  • 线程内存布局

    我了解进程内存布局的样子 代码 数据 堆 堆栈 但是 我不明白具有多个线程的程序的内存布局究竟是什么样的 毕竟 该进程有一个堆栈 所以我假设所有线程都以某种方式共享相同的堆栈 但这似乎不对 因为每个线程都有自己的堆栈 并且不能保证线程按照调
  • 从 shell_exec() 获取输出和退出状态

    当做类似的事情时 output shell exec command 2 gt 1 收集命令的 stdout 和 stderr output 有没有办法找到命令的退出状态 人们可以将命令输出写入临时文件 然后附加退出状态 但这相当笨重 还有
  • $_SERVER['REQUEST_URI'] 和 header('location: ...') 的任何安全问题;

    我的网站有页眉 页脚和主要内容 如果用户未登录 则对于主要内容 可能会显示登录表单而不是实际内容 在该登录表单上我写了 SERVER REQUEST URI 在会话变量中 SESSION redirect 我的登录表单后处理程序将登录用户
  • Lucene中的geohash索引是如何工作的

    在 lucene space 4 中 我想知道 geohash 索引在幕后是如何工作的 我理解 geohash 的概念 它基本上需要 2 个点 纬度 经度 并创建一个 字符串 哈希 索引只是一个 字符串 索引 r 树或四叉树 还是类似的东西
  • 如何捕获 lambda 表达式内外部变量的值?

    我刚刚遇到以下行为 for var i 0 i lt 50 i Task Factory StartNew gt Debug Print Error i ToString 会导致一系列 Error x 其中大多数x等于50 相似地 var
  • memcpy 在 Linux 中移动 128 位

    我正在 Linux 中为 PCIe 设备编写设备驱动程序 该设备驱动程序执行多次读取和写入来测试吞吐量 当我使用 memcpy 时 最大有效负载TLP https en wikipedia org wiki PCI Express Data
  • Kotlin 是否支持类似于 Swift 中的协议组合的接口组合或未来有计划吗?

    到目前为止我发现的答案可能是否定的 但我想知道未来是否有任何计划支持此功能 这是 Swift 中的样子 协议组合的形式为 SomeProtocol AnotherProtocol 您可以根据需要列出任意多个协议 并用与号 分隔它们 除了协议
  • 在 Entity Framework Core 中使用两列的一对多关系

    在我的项目中我有一张桌子Translation可以有任何模型的翻译 为了实现这一点 该表有两个字段 Model and ModelId The Model属性保存一个整数 指示模型的类型和ModelId有这个模型的id 因此 例如 Prod
  • 删除ggplot2中geom_boxplot中的边框

    这看起来应该相对简单 但我找不到允许我这样做的论点 并且我已经在 Google 和 Stack 中搜索了答案 示例代码 library ggplot2 library plotly dat lt data frame cond factor
  • Dagger 2.15:AppComponent - 无法处理此接口

    我无法构建我的应用程序 并出现以下错误 Task app kaptDebugKotlin debug AppComponent java 7 error ComponentProcessor MiscError dagger interna
  • 使用转换器从 System.Windows.SystemParameters.PrimaryScreenWidth 进行 WPF 绑定

    我试图将 System Windows SystemParameters PrimaryScreenWidth 绑定到 ColumnDefinition 的 来自 Grid 内 宽度属性 并使用转换器将 PrimaryScreenWidth