在 silverlight 中使用 MVVM 模式设置可见性

2024-03-04

我在银光下取了一个网格。最初,textbox2 是不可见的。当我单击 textbox1 时,我们必须看到 textbox2。我尝试如下:

<TextBox x:Name="textbox1" SelectionChanged="txt1_SelectionChanged"/>
<TextBox x:Name="textbox2 "  Visibility="Collapsed"/>

private void txt1_SelectionChanged(object sender, RoutedEventArgs e)
{            
    textbox2 .Visibility = Visibility.Visible;
}

效果很好。

但我想使用MVVM模式。所以我不想使用 eventHandler。 那么如何使用 MVVM 模式做到这一点呢?


编辑:抱歉,我以为您的意思是当另一个文本框具有焦点时文本框可见,我更改了最初的答案。

我目前无法尝试,但您可以使用 valueconverter 将文本框的 Visibility 属性绑定到另一个文本框的 SelectionLength 属性:

<UserControl.Resources>
    <local:IntToVisibilityConverter x:Key="IntToVisibilityConverter" />
</UserControl.Resources>

<Textbox 
  x:name="textbox2" 
  Visibility={Binding SelectionLength, 
              ElementName="textbox1" 
              Converter={StaticResource IntToVisibilityConverter}}
/>

像这样实现值转换器:

public class IntToVisibilityConverter : IValueConverter 
{
  public Object Convert(Object value, Type targetType, Object parameter, CultureInfo culture)
  {
    return (int)value > 0 ? Visibility.Visible : Visibility.Hidden;
  }

  public Object ConvertBack(Object value, Type targetType, Object parameter, CultureInfo culture) 
  {
    throw new InvalidOperationException("Converter cannot convert back.");
  }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 silverlight 中使用 MVVM 模式设置可见性 的相关文章

  • 确定我的 Silverlight 应用程序的版本

    我正在尝试确定 Silverlight 应用程序的版本号 目前我正在使用 string name Assembly GetExecutingAssembly FullName AssemblyName asmName new Assembl
  • 如何获取 Windows Phone 7 的 useragent 字符串?

    我需要获取手机的用户代理字符串 但我在 API 中没有找到任何允许这样做的内容 我遇到过以下两篇描述用户代理字符串格式的博客文章 http blogs msdn com b iemobile archive 2010 03 25 ladie
  • Silverlight Datagrid:在对列进行排序时突出显示整个列

    我的 Silverlight 应用程序中有一个 DataGrid 我想在对该列进行排序时突出显示整个列 它在概念上与上一个问题类似 Silverlight DataGrid 突出显示整列 https stackoverflow com qu
  • 在 Windows Phone silverlight 8.1 上接收 WNS 推送通知

    我有 Windows Phone 8 1 silverlight 应用程序 我想使用新框架 WNS 接收通知 我在 package appxmanifest 中有
  • 为什么 WP8 LongListSelector 错误地重用了 CheckBox 的选中状态?

    我有一个带有以下模板的 WP8 LongListSelector
  • ListBox.ScrollIntoView() 似乎在 WP7 中不起作用

    每当将新项目添加到项目源时 我想将列表框滚动条移动到底部 但是ScrollIntoView 如果我向它传递对新添加项目的引用或其索引 它似乎不会执行任何操作 有没有人让它工作 或者对如何将列表框向下滚动到底部有任何其他建议 一些代码 voi
  • Silverlight 打印中“对话框必须由用户启动”安全异常的另一个技巧

    当我尝试在 Silverlight 中打印一些内容时 我收到臭名昭著的 对话框必须由用户启动 安全异常 正如您所看到的 该对话框尽可能由用户启动 约翰爸爸也帮不了我太多 http johnpapa net silverlight print
  • 在 silverlight 中打开响应流

    我正在尝试使用 Silverlight 3 从服务器返回图像 服务器返回响应流 如下所示 context Response ContentType imageFactory ContentType imgStream WriteTo con
  • ASP.NET/Silverlight 控制 USB 设备

    我想使用某种 USB 设备 例如闪光灯 提醒用户有新消息 是否可以从 ASP NET 或 Silverlight 控制 USB 设备 您可以在网页中使用自定义 ActiveX 组件和一些 javascript 来完成此操作 或者 您可以使用
  • 调试 Silverlight 未命中断点

    我正在尝试为学校项目开发 Silverlight 应用程序 但我遇到了 Visual Studio 无法加载断点的问题 这使得使用 ViewModel 调试 Silverlight 应用程序变得非常困难 我尝试在 项目属性 gt Web g
  • 重新绑定 Silverlight 列表框控件后,如何让它列表框滚动到顶部?

    我有一个 silverlight 列表框 用作搜索结果框 我正在使用动态搜索 搜索框中的按键会导致事件触发以过滤此列表框的内容 我遇到的问题是 如果用户在未过滤框时向下滚动 然后进行搜索 列表框的重新绑定不会导致滚动返回到顶部 从而使结果看
  • 从 Web 打印“原始文本”(ZPL)

    我们有很多旧的 ZPL 标签 我们希望能够从网络客户端打印它们 打印机连接到客户端而不是服务器 我们有一些想法 从 Silverlight 打印 不可行 似乎无法在不调用 COM 对象的情况下从 NET 打印 原始 到 Zebra 而这在普
  • 将 ARGB 拆分为字节值

    我有一个 ARGB 值存储为 int 类型 它是通过调用 ToArgb 来存储的 我现在想要来自 int 值的各个颜色通道的字节值 例如 int mycolor 16744448 byte r g b a GetBytesFromColor
  • WCF 服务中的缓冲区大小

    我们有一个 WCF 服务 它执行某些存储过程并将结果返回给 silverlight 客户端 某些存储过程最多返回 80K 行 下面给出的是 web config 中服务的设置
  • 隐藏继承的成员

    我正在寻找某种方法来有效隐藏继承的成员 我有一个继承自公共基类的类库 一些较新的后代类继承了依赖属性 这些属性已变得残存 并且在使用时可能会有点混乱智能感知或使用视觉设计器中的类 这些类都是为 WPF 或 Silverlight 2 0 编
  • Silverlight 浏览器外应用程序不会使用 MainWindow.Close 方法关闭

    我有 Silverlight 5 1 10411 0浏览器外 http msdn microsoft com en us library dd550721 28v vs 95 29应用程序是不被信任 http msdn microsoft
  • Silverlight:加密Web服务的用户名和密码

    加密不是我的强项 我正在 Silverlight 3 中编写一个应用程序 它与 Web 服务通信以对用户进行身份验证 Web 服务不一定在 SSL 下托管 我正在尝试找到一种在传递用户名和密码之前对其进行可逆加密的方法 该方法不依赖于将密钥
  • Silverlight/WPF 按钮上的 MouseOver 样式

    努力为鼠标悬停的按钮设置样式 我已经成功地设置了按钮的样式 纯红色 但我希望每当鼠标悬停时它都会更改为纯黑色 我是 XAML 新手 我可以看到它需要某种类型的故事板 动画 不确定具体如何执行此操作 任何帮助将不胜感激 这与 WPF 和 Si
  • Silverlight MVVM 绑定更新按不期望的顺序触发

    Scenario 在 Silverlight 4 MVVM 项目中 我们有一个ListBox控件包含项目 所选项目以双向方式绑定到 ViewModel 中的相应属性 另一个控件 出于某种原因 我将其精简为一个TextBox 是绑定到所选项目
  • Windows Phone 7 图表/图形控件

    我们正在开发一个 Windows Phone 7 原型应用程序 并且需要一个图形 图表控件来使用 我们看了银光工具包 http silverlight codeplex com 其中有一些看起来效果很好的控件 但是 我们无法让它发挥作用 每

随机推荐

  • ASP.NET Identity 用户名中的特殊语言字符

    我想使用一些特殊字符 例如 在用户名中 但我面临这个错误 IdentityResult result UserManager Create applicationUser password Error 用户名 test 无效 只能包含字母或
  • pygame 中 sys.exit() 的问题

    我正在学习使用 Pygame 当我使用sys exit 我遇到了一个问题 这是代码 import pygame sys os from pygame locals import pygame init window pygame displ
  • 仅当 r 中满足条件时,数据帧内的增量计数器

    我想创建一个累积增量计数器 仅在满足条件时才会增加 DT lt data table id c 1 1 1 1 1 1 1 2 2 2 b c 10L 5L 3L 4L 2L 6L 1L 3L 5L 7L 我没有得到想要的结果rleid因为
  • 将不同数据集与 R 中的堆积条形图进行比较

    我需要比较两种不同的方法 每种方法使用堆叠条形样式在一张图中有 3 个不同的结果 我想画一个图 以便 x 轴显示实验 y 轴显示结果 每个条形以堆叠条形格式填充 3 个结果 experiment method resuult1 result
  • 我的应用程序可以与 Moodle 通信吗?

    我正在考虑构建一个学生应用程序 它将使用 Moodle 数据 并在上传新文件时通知用户 也许还可以执行诸如检查成绩等操作 我对 Android 编程很陌生 很容易与技术术语混淆 我浏览了一下网络 发现有一个 API 但我并不真正 100 知
  • 使用 SMTPHandler 整理 Python 日志记录 MemoryHandler 中的输出

    我设置了日志记录模块 MemoryHandler 来对 SMTPHandler 目标的调试和错误消息进行排队 我想要的是当进程出错时发送一封电子邮件 其中包含截至该点的所有调试语句 每行一个 相反 我收到的是每条调试消息的单独电子邮件 这看
  • 在 HTML 中添加滚动条

    这是一个非常菜鸟的问题 我想我已经知道答案了 但是 您可以将滚动条添加到 div CSS div height 100px overflow auto jsFiddle http jsfiddle net alexdickson Wdj3M
  • Grafana 多值浮点 histogram_quantile

    嗨 我正在强制解决 histogram quantile 问题 如果我将变量设置为多值 这样我就可以重复面板 然后我收到错误消息 字符 21 处解析错误 意外字符 我的要求是 histogram quantile percentile av
  • 这两个查询之间的最佳实践

    我昨天参加了一个用户组会议 他们指出使用参数化查询比对查询进行编码更好 这让我开始思考 这是否有什么好处 显然规模比这大得多 DECLARE Client1 UNIQUEIDENTIFIER Client2 UNIQUEIDENTIFIER
  • 在 Mongoose 中使用连接和过滤器进行查询

    我是 Mongodb 的新手 并且在我使用 MEAN 堆栈构建的 Web 应用程序中使用它 我的目标是通过连接两个表并对它们应用过滤条件来查询它们 例如 我有两个表 自行车 自行车 ID 注册号 品牌 型号和预约 预约日期 状态 自行车 参
  • 样式属性与设置 ID 和外部 CSS

    我理解将所有表示元素保留在标记之外并将它们放入外部 css 文件中的概念 我想了解一下在什么类型的情况下您会认为使用样式属性与设置 ID 和外部 Css 是合理的 到目前为止 我已经经常使用 style 属性 我通常使用它来指定特定于该元素
  • 将直流电机添加到 Simscape 多体旋转关节

    我有以下直流电机模型和 2 轮机器人的 Simscape 多体模型 DC Motor with Torque Output Simscape Multibody Model of my Robot 我想控制机器人的速度 Simscape 多
  • yesod init 命令在 Windows 上不起作用

    我按照以下步骤安装 Yesod Web 框架 mkdir mypackage cd mypackage cabal update cabal sandbox init cabal install yesod platform yesod b
  • 从 Excel VBA 编辑 Outlook 电子邮件

    我有以下代码 可以成功使用在我的计算机本地保存的预制 Outlook 模板 文件名 并将 Active Excel 文档附加到其中 但是我想添加一些其他文本到电子邮件模板 以节省我复制和粘贴的时间 无论如何 是否可以将额外的正文文本添加到预
  • 多种差异工具

    我已经设置了我的git使用 P4Merge 作为 diff 工具 如上所述here http progit org book ch7 1 html So git diff将触发 P4Merge 然而 有时我发现使用 UNIXdiff更快 更
  • 如何在postgis中找到多边形内的所有点?

    我将位置存储在 location table point location 几何 中 现在我在谷歌地图上绘制一个多边形并将该多边形 几何 传递到后端 我想找到该多边形内的所有位置 SELECT POINT LOCATION FROM LOC
  • 如何找到对“已知”列表进行排序的最佳堆栈移动集?

    关于未知列表的排序问题 人们已经了解很多 但是寻找最优排序的问题呢 已知名单在堆栈机中 也就是说 假设您有以下堆栈机 4 1 3 2 即有3堆空间 其中1堆填满了数字 此外 假设您的堆栈机可以执行 2 个动作 move a b 放置顶部元素
  • 在 Symfony2 中向删除表单添加“确认选项”的最佳方法是什么?

    如果您使用控制台为 Symfony2 中的实体创建 CRUD 代码 您最终将得到一个非常基本的删除功能 此功能简洁高效 但不提供 您确定吗 确认 如果要删除的实体存在 则立即删除 有人对添加用户确认的最简单方法有建议吗 到目前为止我一直在使
  • 您如何搜索/访问用户数据?

    我想提醒正在注册的用户 他们选择的电子邮件地址已在我们的用户库中 在他们注册之前 同时 如何将他们 所需的 电子邮件与我的用户列表中的用户进行比较 用户到底存储在哪里以及如何访问该数据节点 您应该有一个用户节点 其中包含您的用户以及有关他们
  • 在 silverlight 中使用 MVVM 模式设置可见性

    我在银光下取了一个网格 最初 textbox2 是不可见的 当我单击 textbox1 时 我们必须看到 textbox2 我尝试如下