文本框的值消失 - 将视图模型绑定到选项卡(内容控件)

2024-01-10

基于MVVM 示例 http://msdn.microsoft.com/en-us/magazine/dd419663.aspx作者:Josh Smith,我实现了多选项卡选项,该选项将不同的选项卡绑定到不同的视图模型 使用将视图模型绑定到视图的简单数据模板。

 <DataTemplate  DataType="{x:Type fixtureVM:SearchViewModel}">
    <SearchVw:SearchView/>
</DataTemplate>

我遇到的问题是,当我切换选项卡然后再次切换回来时,文本框中的值消失。当我将文本框中的文本绑定到 ViewModel 中的值时,它不会消失。这很好,我可以克服这个问题,但我遇到了另一个问题,例如,一旦选项卡失去焦点,网格中滚动条的位置就会消失。

为什么价值会消失?我假设这是一个清理资源的 WPF 子系统任务!?我怎样才能避免这种情况?我还觉得它可能会减慢我的应用程序的速度。


阅读我的帖子here https://stackoverflow.com/questions/2770387/binding-tabcontrol-itemssource-to-an-observablecollection-of-viewmodels-causes-co关于为什么会发生这种情况。基本上,因为您在 DataTemplate 中连接 View 和 ViewModel,所以该选项卡每次收到焦点时都会重新创建视图。是的,这会消耗更多的资源。您可以通过以不同的方式连接视图和 ViewModel 来解决此问题(即 Catelog 方法、WAF 或使用不同类型的项目控件也可以解决问题......)

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

文本框的值消失 - 将视图模型绑定到选项卡(内容控件) 的相关文章

  • Microsoft Teams 中私人消息的传入 Webhook

    我可以从 C 应用程序或 PS 脚本创建传入 Webhook 将 JSON 消息发送到 MSFT 文档所解释的通道 但是 我想使用传入的 webhook 将 JSON 消息从我的应用程序发送到用户 作为私人消息 就像 Slack 允许的那样
  • 如何将字节块读入结构体

    我有一个需要处理的资源文件 它包含一组文件 首先 资源文件列出了其中包含的所有文件 以及一些其他数据 例如在此结构中 struct FileEntry byte Value1 char Filename 12 byte Value2 byt
  • 为什么WCF中不允许方法重载?

    假设这是一个ServiceContract ServiceContract public interface MyService OperationContract int Sum int x int y OperationContract
  • 在 .NET 中记录 StackOverflowException

    最近 我的 NET 应用程序 asp net 网站 中出现了堆栈溢出异常 我之所以知道该异常是因为它出现在我的 EventLog 中 我知道 StackOverflow 异常无法被捕获或处理 但是有没有办法在它杀死您的应用程序之前记录它 我
  • 1.2.840.113556.1.4.1941 (LDAP_MATCHING_RULE_IN_CHAIN) 存在性能问题?

    LDAP 搜索有一些内置规则 其中之一是LDAP MATCHING RULE IN CHAIN From MSDN https msdn microsoft com en us library aa746475 v vs 85 aspx 1
  • 元素属性语法和属性属性语法之间有语义差异吗?

    我认为元素属性语法和属性属性语法在语义上没有太大区别 但是 我发现一定有什么不同 例如 下面的例子只是演示了一个简单的触发器
  • 将标签文本的一部分设置为粗体

    有什么办法可以使一部分label text要大胆吗 label text asd string 想要string部分要加粗 有可能吗 这怎么办 下面的类说明了如何通过覆盖来做到这一点OnPaint in the LabelWinForms
  • 到 ToList() 还是不到 ToList()?

    给定一个在记忆中 不是 LINQ to SQL 类列表 List
  • .NET 中严格浮点数学的库

    我有 Java 算法 计算及其单元测试 单元测试期望结果具有一定的精度 增量 现在我将算法移植到 NET 中 并希望使用相同的单元测试 我使用双数据类型 问题在于 Java 使用 strictfp 64 位 来执行 Math 类中的某些操作
  • 确定最接近的已知颜色

    我允许我的应用程序的用户选择自定义颜色 并希望有一种方法来显示每种颜色的友好名称 而不是显示十六进制代码的文本表示形式 我如何找到最近的System Drawing Color对于给定的十六进制代码 希望这对某人有帮助 Public Fun
  • ASP.NET MVC ActionFilterAttribute 在模型绑定之前注入值

    我想创建一个自定义操作过滤器属性 该属性在模型绑定期间可访问的 HttpContext 项中添加一个值 我尝试将其添加到 OnActionExecuting 中 但似乎模型绑定是在过滤器之前执行的 你知道我该怎么做吗 也许模型绑定器中有一个
  • DataGridView 中的 C# FormatException

    我创建了一个带有一些列的 DataGridView 订单列仅允许用户输入 int 数字 当我输入 j 例如 时 它会抛出 FormatException 并且我尝试添加 try catch 来解决问题 但它看起来不起作用 private v
  • 将变量作为参数传递与传递另一个函数的返回值时出现“无效过程调用”错误

    我收到错误 无效的过程调用或参数 AddRange 当传递一个变量到ArrayList AddRange https msdn microsoft com en US library zhfwys3c 28v vs 110 29 aspx
  • 如何使取消按钮像“X”按钮一样工作?

    在我的 XAML 文件中 我有一个窗口 我试图将其设置为无论用户单击 X 按钮还是单击 取消 按钮 行为都是相同的 我的缩写代码如下 public partial class Dialog Window private void Windo
  • WPFToolkit.Extended - 工具在哪里?

    我已采取的步骤 我正在使用 NET 4 0 我得codeplex http wpftoolkit codeplex com releases view 84227并下载了第一个 扩展 WPF 工具包二进制文件 2 号将此文件 Extende
  • .NET 内存不足故障排除

    在阅读了几篇有关 NET 技术中的内存的启发性文章后 Out of Memory 不是指物理内存 https learn microsoft com en us archive blogs ericlippert out of memory
  • 每个托管线程是否都有自己对应的本机线程?

    我想知道是否在 Net 中创建托管线程 通过调用Thread Start 导致在后台创建一个本机线程 那么托管线程是否有对应的本机线程呢 如果是 当托管线程等待或睡眠时 是否意味着相应的本机线程也在等待或睡眠 是的 NET 线程映射到所有当
  • 使用接口有什么好处?

    使用接口有什么用 我听说它用来代替多重继承 并且还可以用它来完成数据隐藏 还有其他优点吗 哪些地方使用了接口 程序员如何识别需要该接口 有什么区别explicit interface implementation and implicit
  • 如何在 32 位或 64 位配置中以编程方式运行任何 CPU .NET 可执行文件?

    我有一个可在 32 位和 64 位处理器上运行的 C 应用程序 我试图枚举给定系统上所有进程的模块 当尝试从 64 位应用程序枚举 32 位进程模块时 这会出现问题 Windows 或 NET 禁止它 我认为如果我可以从应用程序内部重新启动
  • SignalR 似乎正在减慢我的 MVC/Azure 应用程序的启动速度

    我有一个 MVC 应用程序在 Windows Azure 上的 WebRole 上的 NET 4 5 下运行 使用 SignalR 1 0 alpha2 并使用 ServiceBus 底板 在我的 App Start 文件夹中 我有 Reg

随机推荐

  • 如何根据目标c、Iphone中的当前位置找到最近的100米纬度和经度

    如何根据当前位置找到最近的 100 米纬度和经度 我在 SQLITE3 中创建了一个数据库 其中包含一组纬度和经度以及相应的位置名称 根据当前位置 我想获取目标 C 中最近的 100 米纬度和经度 我正在使用以下代码来获取当前位置 void
  • 简单的 Bootstrap 页面在 iPhone 上没有响应

    我下载了 Twitter Bootstrap 示例并用它创建了一个简单的 Rails 项目 我在需要的地方复制了 css 它显示得很好 我还复制了 js 一切都在我的桌面上运行得很好 当我更改浏览器的大小时 它会重新组织页面 当使用一些不同
  • 使用 Node.js 监听 2 个不同的端口

    我目前正在使用 Sockets io 与客户端通信 从端口发送 JSON 等 这一切都很好 但我想做的是同时监听另一个端口 以创建一种用于测试目的的管理页面 例如 该页面将有一个按钮 用于为另一个端口上连接的所有客户端发送某种类型的 JSO
  • 如何使用cosmos sdk生成给定种子短语的高清钱包密钥和地址?

    我正在尝试使用 cosmos sdk 生成高清钱包私钥 公钥和地址 下面是 python 中的等效实现 它按预期生成键和地址 但在尝试生成时golang使用cosmos sdk它不会生成相同的密钥 非常感谢任何等效 golang 版本的 p
  • 科学计算中如何处理下溢?

    我正在研究概率模型 当对这些模型进行推理时 估计的概率可能会变得非常小 为了避免下溢 我目前在对数域中工作 我存储概率的对数 概率相乘相当于加法 求和是通过以下公式完成的 log exp a exp b log exp a m exp b
  • Angular2 组件:无法在 ngOnDestroy 内发出 @Output EventEmitter?

    角度2 rc1 是否可以有这样的组件 export class MyComp Output myEvent new EventEmitter false ngOnDestroy this myEvent emit ngOnDestroy h
  • 演示 Docusign API:java.net.SocketException 连接重置

    我们最近开始收到此错误 我们的 API 已经运行四年多了 DEMO 网站上有什么变化吗 引起原因 java net SocketException调用https demo docusign net API 3 0 AccountManage
  • 在 Visual Studio 中禁用特定代码块的代码格式

    我怎么能够禁用代码格式化对于特定的代码块视觉工作室 2017 C 7 我有这个方法 public CarViewModel ICarsRepo carsRepo Manufacturers ToSelectList
  • 如何使用 JavaScript 将输入字段设置为只读?

    我知道你可以添加readonly readonly 到输入字段 因此它不可编辑 但我需要使用 javascript 来定位输入的 id 并将其设置为只读 因为我无权访问表单代码 它是通过营销软件生成的 我不想禁用输入 因为应在提交时收集数据
  • 在Webview中使用PDFJS库在Javafx中显示Pdf

    我的目标是在我的 JavaFX 应用程序中显示 pdf 文档 经过研究 我发现了 Mozilla 的 PDFJS 库 发现它非常有用 我正在做的是从 JAVA 读取 PDF 文件作为字节数组 并在 Web 视图中调用 js 代码 这是代码
  • 以点开头的行是什么意思?

    我正在阅读巧手教程 http craftyjs com tutorial bananabomber create a game并遇到了一个我找不到文档的代码片段 搜索标点符号太难了 有问题的行 11 和 12 遵循Crafty e行并开始于
  • Material UI 的 Snackbar 不向下滑动

    我在用Material UI第一次并尝试实施SnackbarAPI 发布成功 我希望 Snackbar 在 Enter 时向上滑动 然后在 Exit 时向下滑动 我能够实现在 Enter 时向上滑动 但需要 在退出时向下滑动 的帮助 谁能帮
  • 安装和使用 PIL-Python 成像库的过程是什么?

    我尝试使用 pip 安装 PIL 它给了我这个错误 C Users AppData Local pip gt pip 安装http effbot org downloads Imaging 1 1 6 tar gz http effbot
  • 为什么当我指定 -ErrorAction SilentlyContinue 时仍然显示错误?

    PS C Users ad ctjares gt Stop Transcript ErrorAction silentlycontinue Transcription has not been started Use the start t
  • Docker 化您的 Angular NodeJS 应用程序

    我们有一个前端应用程序 它是用 Angular html css javascript 编写的 需要由网络服务器 nginx 托管 Angular 正在与 NodeJs 服务器通信 该服务器将与后端通信 现在我们必须在 Docker 中运行
  • 如何将运送区域名称添加到 WooCommerce 管理订单列表中的新列

    我想在 WooCommerce 的订单概览中显示送货区域名称 这显示了订单概览 这显示了我要显示的运送区域名称 我读过 我可以使用自己的插件来完成此操作 尝试过但失败了 或者在我的函数中使用过滤器 我找到了这个过滤器 可以将日期添加到同一订
  • Windows Phone7:单击按钮打开网页?

    我刚刚搜索 但没有找到在我的 Windows Phone7 应用程序中创建 Web 链接的方法 在Android中TextView有android autoLink Web 在 Windows Phone7 文本块中我没有找到任何相关属性
  • Linux 用户空间 ELF 加载器

    我需要做一件相当不寻常的事情 手动执行 elf 可执行文件 IE 将所有部分加载到正确的位置 查询 main 并调用它 然后进行清理 可执行文件将被静态链接 因此不需要链接库 我还控制基地址 所以不用担心可能的冲突 那么 有没有相关的库呢
  • 安装 Bison 后出现“make: yacc: Command not found”

    在 gcc 4 1 2 linux 5 中运行 makefile 时 出现以下错误 make yacc Command not found 通过谷歌搜索 我了解到可以通过安装 Bison GNU 解析器生成器来纠正此错误 但即使安装了 Bi
  • 文本框的值消失 - 将视图模型绑定到选项卡(内容控件)

    基于MVVM 示例 http msdn microsoft com en us magazine dd419663 aspx作者 Josh Smith 我实现了多选项卡选项 该选项将不同的选项卡绑定到不同的视图模型 使用将视图模型绑定到视图