在 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 模式设置可见性 的相关文章

  • ListBox MVVM 中的清除选择

    在 MVVM Silverlight 应用程序中 用户可以在 TextBox 中输入文本 并且 ListBox 内容会相应更改 例如 如果用户输入 TV 列表框将填充所有可用的电视品牌 并且用户可以从列表框和列表框条目中选择产品 接下来 如
  • Silverlight 中的 Response.Redirect 等效项是什么?

    我需要转到另一个页面或网址 silverlight中的response redirect是什么 如果您想导航到 Silverlight 导航应用程序的另一个页面 NavigationContext Navigate new Uri View
  • Silverlight 如何确定程序集是“Silverlight”?

    我正在尝试从 F 编译代码以在 Silverlight 中使用 我编译 noframework cliroot C program Files Microsoft Silverlight 2 0 31005 0 standalone 这会生
  • 在 silverlight 中保存文件和异步回调

    在 Silverlight 中 您必须使用保存文件对话框来保存文件 您只能通过用户事件 即按钮单击 打开此对话框 我从 Web 服务调用异步返回文件数据 我如何将其保存到文件 如果我在服务调用之前询问他们 我将无法在数据返回后使用该流 如果
  • 在 WP7 Silverlight 应用程序中导航时将复杂对象传递到页面

    我一直在使用NavigationService s Navigate导航到我的 WP7 Silverlight 应用程序中其他页面的方法 NavigationService Navigate new Uri Somepage xaml va
  • 无论如何可以更改 Silverlight 3 中 OpenFileDialog 的标题吗?

    我在 Silverlight 3 应用程序中使用 OpenFileDialog 示例代码如下 OpenFileDialog dialog new OpenFileDialog dialog Multiselect false dialog
  • 如何让ChildWindow阻塞

    ChildWindow是一个模态窗口 但它不会阻塞 有什么办法让它阻塞吗 我基本上想要一个 ShowDialog 方法 该方法将调用 ChildWindow Show 但直到用户关闭 ChildWindow 后才会返回 我尝试使用 Moni
  • 银光。如何将 InlineUIContainer 内容中的文本与 RichTextBox 中的外部文本对齐

    任务 使 InlineUIContainer 的文本内容与外部文本内联 InlineUIContainer 内容的标准行为是当底部边缘与外部文本内联时 可以使用 RenderTransform 移动 InlineUIContainer 的位
  • C# 构造函数不能调用自身

    构造函数 Delay vkMessages vkMessages string System DateTime string bool string 无法调用自身 我有另一个类 该类的副本 但它可以工作 我可以添加代码 我如何解决这个问题错
  • Windows Phone 7 可以实现 ping 吗?

    为了了解 WP7 中的网络功能 我将构建一个简单的 ping 应用程序 该应用程序将显示对某个主机的 ICMP ping 请求的结果 然而 不仅System Net NetworkInformation Ping班级不见了 System N
  • 使用 Silverlight 在运行时在 tabcontrol 中添加 TabItem

    嗨朋友们 我是 silverlight 应用程序的新手 我创建了带有 4 个 tabitem 的 tabcontrol tabitem 的名称类似于 tab1 tab2 tab3 tab4 我需要在运行项目中添加一个选项 通过以下代码添加成
  • 如何在 Windows Phone 7 中创建自定义文本框?

    是否可以通过创建自定义文本框来处理 sip 我想创建一个自定义文本框 gt 创建获得焦点事件 gt 在我的自定义文本框的焦点上而不是 SIP 上 我的自定义键盘应该打开 要求 如何创建自定义文本框 打开自定义键盘而不是 SIP 获取文本字段
  • 从 Silverlight OOB 访问注册表

    我可以访问吗Registry from Silverlight Out Of Browser 我只想搜索 读取键并获取键值对 这可能吗 或者 有没有其他方法 例如运行powershell script 或启动其他一些 exe 来了解这些值
  • 如何隐藏数据透视项标题?

    我希望有一个具有 PivotItems 但没有横向数据透视项标题文本的数据透视控件 它是横向模式下的画廊 当恢复为纵向时 它应该再次显示 PivotItems 标题 解决办法就是制作文字PivotItem Header 不好 因为标题文本占
  • Silverlight - 动画贝塞尔曲线画线?

    我正在构建一个小型 Silverlight 应用程序 在我的应用程序中 我需要绘制线条 类似于附图中所示的内容 我知道绘制拱形连接线 绿色 的最佳方法是使用贝塞尔曲线 我的问题是 如何对线条的绘制进行动画处理 让它们从起始 X Y 坐标开始
  • 强制绑定更新 Silverlight

    如何强制更新我的对象 DataContext 绑定 我正在网格上使用事件 并且在事件触发之前不会处理绑定更新 有什么廉价的技巧可以解决这个问题吗 最后 我总是可以用旧的手动方式从文本框中获取值并更新我的对象 但最好让绑定为我做这件事 UPD
  • Silverlight 3 工具未显示在 Visual Studio 中

    我下载并安装了Silverlight 3 工具 http go microsoft com fwlink LinkID 143571 我想在 ASP net 页面中使用 Silverlight 服务器控件 但我的工具箱中没有 Silverl
  • 添加对共享类的多个 WCF 服务的服务引用

    我正在尝试将我的 WCF Web 服务拆分为几个服务 而不是一个巨大的服务 但是 Visual Studio Silverlight 客户端 复制了两个服务共享的公共类 这是一个简单的例子来说明我的问题 在此示例中 有两个服务 两者都返回类
  • 为什么在为 Silverlight 5 应用程序添加编码 UI 支持时 System.Core 无法加载?

    我遇到以下问题 尝试添加对为 Silverlight 5 应用程序创建编码 UI 测试的支持 MSDN 1 第一步是在 Silverlight 5 项目中引用程序集 Microsoft VisualStudio TestTools UITe
  • 如何在 Silverlight 3 中将 .NET RIA 服务与 MVVM 结合起来?

    NET RIA 服务被描述为 Silverlight 的 n 层框架 我一直想知道这个框架和模型 视图 视图模型模式之间有什么关系 它们是否存在冲突 或者您能看到协同组合的潜力吗 NET RIA 服务和 MVVM 是协同作用的 并不冲突 例

随机推荐

  • 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 我尝试如下