私有设置器仅在发布版本上抛出错误

2023-12-11

我有一个地图图块设置,我正在通过菜单按钮进行更新。我遇到了一个奇怪的情况,我只在发布版本上遇到错误。代码如下:

视图模型

private KnownTileSource _selectedTile;
public KnownTileSource SelectedTile
{
    get { return _selectedTile; }
    private set
    {
        _selectedTile = value;
        ...
        OnPropertyChanged("SelectedTile");
    }
}

View

<Window ...
 xmlns:predefined="clr-namespace:BruTile.Predefined;assembly=BruTile">
...
    <MenuItem Header="_Bing Aerial" Command="{Binding ChangeTileCommand}" CommandParameter="{x:Static predefined:KnownTileSource.BingAerial}" IsChecked="{Binding Path=SelectedTile, Mode=TwoWay, Converter={local:EnumToBooleanConverter}, ConverterParameter=BingAerial}"/>
...
</Window>

这在我的开发环境中一切正常,但是当我生成发布版本时,我得到以下信息:

Error

System.InvalidOperationException: A TwoWay or OneWay ToSource binding cannot work on the read-only property 'SelectedTile'...

简单的解决方案,改变private set to set在上面的SelectedTile财产。

那么为什么这不会在调试期间抛出错误而仅在发布期间抛出错误呢?我看不出它在调试模式下是如何工作的。


这是一个已修复的已知错误:https://connect.microsoft.com/VisualStudio/feedback/details/773682/wpf-property-with-private-setter-is-updated-by-a-twoway-binding

因此,如果您的应用程序以 .NET Framework 4.0 为目标,但开发计算机上安装了 .NET Framework 4.5+,则可能会出现此行为。

你应该删除private来自设置器的关键字来解决问题。

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

私有设置器仅在发布版本上抛出错误 的相关文章

随机推荐

  • 使用python查找图像存在的docx文件

    我如何找到文档文件中存在的图像 python 中有没有相应的模块 我搜索过但没有用 这就是我们如何从word文件中读取内容 下面的代码没有提供有关文件中存在的图像的信息 from docx import Document documnet
  • 在 debian 中安装 Node js 时出错

    我尝试安装在debian nodejs 我正在按照以下步骤操作如何在 ubuntu 上安装 Node js但当我跑步时sudo bash nodesource setup sh下面的错误向我显示 有人帮我解决吗 W The reposito
  • React Native - 应用程序如何确定设备上未找到的打包器 IP 地址

    我有一个 React Native 应用程序 如果我在 iOS 模拟器上运行它 它可以工作并且可以连接到在 localhost 8081 上运行的正在运行的打包程序 但是如果我尝试在实际的 iOS 设备上运行该应用程序 它会失败 因为它无法
  • 子集数据帧中意外输出的原因 - R

    我有数据框 a 它有一个名为 VAL 的变量 我想统计VAL值为23或24的元素 我使用了两个工作正常的代码 nrow subset a VAL 23 VAL 24 nrow subset a VAL in c 23 24 但是 我尝试了其
  • Plotly Scattermapbox:有没有办法在标记上方和下方包含一些文本?

    在 Plotly 中 使用 Scattermapbox 有没有办法在标记上方和下方显示一些文本 目前 仅当我将鼠标悬停在标记上时才会显示文本 并且该图仅显示我想要显示的文本的一部分 我的输入数据框df area如下 我想显示两个中包含的文本
  • Picasa api 是否允许 CORS Post?

    Picasa api 允许跨域 GET 请求 但是当我尝试发布图像 评论时 出现以下错误 XMLHttpRequest 无法加载https picasaweb google com data feed api user default al
  • 如何使用 Python 逻辑检查回文

    我正在尝试用 Python 检查回文 我的代码非常for 循环密集 在我看来 人们从 C 转向 Python 时犯的最大错误是尝试使用 Python 实现 C 逻辑 这使得事情运行缓慢 而且没有充分利用该语言 我看到this网站 搜索 C
  • 如何跳过数组循环中的第一个键?

    我有以下代码 if POST submit Next foreach POST info as key gt value echo value 如何让 foreach 函数从数组中的第二个键开始 对于相当小的数组 使用数组切片创建第二个 f
  • 为什么自调用不适用于 Spring 代理(例如使用 AOP)?

    请解释一下 为什么对代理的自调用在目标上执行而不是在代理上执行 如果这是故意的 那为什么呢 如果通过子类化创建代理 则可以在每个方法调用之前执行一些代码 甚至在自调用时也是如此 我尝试过 并且我有自我调用代理 public class Du
  • 如何使用标志禁用 Crashlytics iOS 库?

    我正在使用最新的 iOS Crashlytics 库 我希望使用单个标志禁用 crashlytics 我怎样才能做到这一点 PS 我没有按照新的 SDK 集成指南使用设置 API 密钥方法 使用 MAC 应用程序集成 您是否试图阻止 Cra
  • 在哪里可以找到 Facebook cookie?

    我对此有点陌生 所以请耐心等待 我已经通过 Javascript SDK 安装了 使用 Facebook 登录 按钮 效果很好 我还设置了 PHP 代码 facebook php 我可以通过 javascript 成功登录 Facebook
  • 正则表达式引擎是否会跳过比模式短的字符串?

    我想循环一组字符串 在每个字符串上 我想循环遍历一组正则表达式 以确定哪些表达式与我所在的字符串匹配 但是 如果字符串长度短于模式字符串的最大可能长度 我希望正则表达式引擎跳过它 例如 假设我停在字符串 abc 上 并用这个正则表达式测试它
  • Angular >= 4.3,httpClient.get 参数为空

    我正在尝试迁移我的Http要求HttpClient要求 我能够迁移我的post查询 但我在迁移时遇到问题get查询 当我这样做时 我的后端没有分别收到任何参数 它告诉我参数未提供且为空 我做错什么了吗 import HttpClient H
  • 即使使用 EnableDelayedExpansion,%time% 也不会在 for 循环中扩展[重复]

    这个问题在这里已经有答案了 所以我注意到批处理文件的日志中的 time 变量不准确 如下所示 输出包含在代码下方 它在进入 for 循环时获取当前时间 但不会随时更新 这些 zip 文件很大 有时需要几分钟才能解压每个文件 有人知道这里发生
  • 带有导航控制器的选项卡栏应用程序

    我有一个简单的 iPhone 应用程序 有一个选项卡栏和 3 个选项卡 每个选项卡作为一个带有相应控制器的单独笔尖加载 每个笔尖都包含一个表格视图 其中包含一些其他用于搜索 过滤等的控件 我想要的 并且似乎找不到示例 是向应用程序添加一个导
  • Karate - 在 karate-config.js 中设置全局 User-Agent 标头

    所以我写了一些测试功能 我想全局添加 User Agent 标头 我更新了我的空手道配置 js为此归档 我添加下面的代码 karate configure headers User Agent Karete Apache HttpClien
  • 有没有办法在“交互”命令后“期望”和“发送”

    因此 我需要在标准输出上输出远程进程的输出 但我还需要能够 监听 它 并在匹配我的关键字后发送命令 我需要这样的东西 我知道这段代码不正确 它的唯一目的是说明我需要什么 usr bin expect log user 0 spawn ssh
  • 我怎样才能在jquery中获取锚标记内的文本

    div a link1 a a href link2 a div jquery div1 a click function var text div1 a text 在上面的标签上 我想在我点击它的锚标签旁边获取文本 但是单击上面的每个锚标
  • 使用 2 Legged OAUTH / OPEN ID 域帐户通过 Google GData API 批量更新电子表格

    好吧 周末就这样拍摄了 这是我周日晚上最后一次求助 必须使用 2 Legged OAUTH 方法的 Google Marketplace 应用程序需要将 50K 记录写入 Google 文档电子表格 我能够创建记录 调整大小 重命名记录并将
  • 私有设置器仅在发布版本上抛出错误

    我有一个地图图块设置 我正在通过菜单按钮进行更新 我遇到了一个奇怪的情况 我只在发布版本上遇到错误 代码如下 视图模型 private KnownTileSource selectedTile public KnownTileSource