2018-8-10-win10-uwp-绑定-OneWay-无法使用
title | author | date | CreateTime | categories |
---|---|---|---|---|
win10 uwp 绑定 OneWay 无法使用
|
lindexi
|
2018-08-10 19:16:50 +0800
|
2018-2-13 17:23:3 +0800
|
Win10 UWP
|
有时候使用绑定的 OneWay 方法无法使用,而使用 TwoWay 的方法就可以使用,但是在调试把 OneWay 做了修改又可以使用,那么请看本文。
这里存在的问题就是,在绑定 OneWay 的时候,存在变量的值是一个绑定,不是具体的值,如果发现代码出现这样的错误。那么请你检查一下绑定的变量是否在其他地方有修改,如果有的话,请不要对他进行修改。
假如有一个简单的界面
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="60*"/>
<RowDefinition Height="121*"/>
</Grid.RowDefinitions> <Grid Grid.Row="0">
<TextBlock x:Name="Barry" Margin="10,10,10,10" Text="0" VerticalAlignment="Center"></TextBlock>
<Button Margin="10,10,10,10" Content="add" HorizontalAlignment="Right" Click="Button_OnClick"></Button>
</Grid> <Grid Grid.Row="1">
<TextBlock x:Name="Dagmar" Margin="10,10,10,10" Text="{Binding Text,ElementName=Barry,Mode=OneWay}" VerticalAlignment="Center"></TextBlock>
<Button Margin="10,10,10,10" Content="Set" HorizontalAlignment="Right" Click="Dagmar_OnClick"></Button>
</Grid>
</Grid>
后台代码是
private void Button_OnClick(object sender, RoutedEventArgs e)
{
var n = int.Parse(Barry.Text);
n++;
Barry.Text = n.ToString();
} private void Dagmar_OnClick(object sender, RoutedEventArgs e)
{
Dagmar.Text = "-1";
}
可以看到,在点击第一个按钮时,会增加两个文本,但是点击 Set 按钮时,就会把下面的文本设为-1,之后无论上面的第一个按钮怎么点击,下面的文本都不会跟着变化。
但是可以看到,设置 Mode 是twoway就可以继续绑定,因为在 WPF 有下面的代码,大概就是判断当前是否可以复制,对源进行赋值,如果不可以对源赋值,就清除绑定,给属性赋值。如果可以对源赋值,那么直接对源赋值。实际UWP也一样,但是我没有找到他的源码。
如果使用了属性,遇到oneway错误的问题,需要自己
2018-8-10-win10-uwp-绑定-OneWay-无法使用的更多相关文章
- win10 uwp 绑定密码
win10 下,密码框无法绑定到ViewModel,Password是不可以绑定. 我们可以自己使用简单方法去绑定 我们之前在WPF 使用绑定密码框,我写了一篇,关于如何绑定,我提供一个我自己试了可以 ...
- win10 uwp 绑定多数据
经常我们需要绑定的数据有多个,当添加到集合控件的对象类型结构比较复杂,我们希望自己来定义排版布局,这时可以使用ItemTemplate用资源的定义 现在有数据 public class caddres ...
- win10 uwp 绑定静态属性
Jasoon 大神问,如何绑定静态属性. 我们经常有静态属性,那么我们如何绑定 假如我们的ViewModel有一个静态属性 public static string CVTE { set; get; ...
- win10 uwp 商业游戏
本文告诉大家去做一个商业游戏,游戏很简单,几乎没有什么技术 游戏的开始,需要添加框架库,于是引用我自己写的库. 首先是创建一个启动页面,这个页面是显示启动的. 在显示启动的时候,是需要加载游戏需要使用 ...
- win10 uwp 商业游戏 1.1.5
本文是在win10 uwp 商业游戏 基础上继续开发,添加一些无聊的游戏 因为在发布几个月,下载量很少,小伙伴说游戏就玩不到几分钟就不想玩,于是我就想加入其他游戏 下面我来告诉大家如何在游戏中添加多个 ...
- Win10 UWP应用发布流程
简介 Win10 UWP应用作为和Win8.1 UAP应用不同的一种新应用形式,其上传至Windows应用商店的流程也有了一些改变. 这篇博文记录了我们发布一款Win10 UWP应用的基本流程,希望为 ...
- win10 uwp 商业游戏 1.2.1
上一个游戏已经告诉大家如何写多个游戏,现在继续写这个无聊的游戏 希望大家在看这篇文章之前先看win10 uwp 商业游戏,在这个文章告诉了大家如何创建游戏. 修改数值 可以从上一篇的博客的游戏看到升级 ...
- win10 uwp 手把手教你使用 asp dotnet core 做 cs 程序
本文是一个非常简单的博客,让大家知道如何使用 asp dot net core 做后台,使用 UWP 或 WPF 等做前台. 本文因为没有什么业务,也不想做管理系统,所以看到起来是很简单. Visua ...
- win10 uwp 使用 Microsoft.Graph 发送邮件
在 2018 年 10 月 13 号参加了 张队长 的 Office 365 训练营 学习如何开发 Office 365 插件和 OAuth 2.0 开发,于是我就使用 UWP 尝试使用 Micros ...
- win10 uwp 使用 Border 布局
在 UWP 写一个界面需要将元素排列,在排列元素的时候有特殊的元素叫容器.容器的意思是元素里面包含元素,在 UWP 用到的容器有很多,也可以自己写一个.简单的容器是 Border 边框控件,如控件说的 ...
随机推荐
- JavaScript--关于实例对象带不带参数和构造函数带不带参数的关系
就是一句话: 构造函数创建对象时,也可以带参数,因为可以对对象进行一些属性的初始化,也就是你创建对象时,就带着这些属性,当然你也可以不带参数,后面实例化对象后再进行添加.而且,js函数的参数在定义函数 ...
- C++中数字转换成字符串
头文件:<string> 转换函数:to_string(); 例如:int n=10; string str=to_string(n) ;
- 使用Fiddler抓取到的“姐夫酷”API接口
下午本来准备抓取些网页视频地址,做一个小的视频app,用来学习ijkplayer,无意中发现了一个app--姐夫酷,这是一个很简单的网页,它也有相应的一个比较简单的android app. 于是心血来 ...
- 为什么学习React Native三点原因
React Native不到两岁,兼容Android平台刚刚1年.我学习React Native其实也就不到1年,不算长,也不算短. Paul Graham在文章中写过:大多数人真正注意到你的时候,不 ...
- [idea]Error:java: invalid source release: 1.8 标签: idea 2017-02-24 15:50 961人阅读
最近用idea敲struts,虽然idea的界面很好看,代码提示也很强大,不过也的确是碰到了一些在eclipse上从来没有碰到过的问题,而且我发现,idea的错误,很多都是在外国的网站上提问的人比较多 ...
- Ubuntu 16.04下OLSR协议安装教程
OLSR是根据MANET的要求,在传统的LS(Link state)协议的基础上优化的. OLSR中的关键概念是多点转播(MPRs),MPRs是在广播洪泛的过程中挑选的转发广播的节点.传统的链路状态协 ...
- bzoj3522 Hotel
Description 有一个树形结构的宾馆,n个房间,n-1条无向边,每条边的长度相同,任意两个房间可以相互到达.吉丽要给他的三个妹子各开(一个)房(间).三个妹子住的房间要互不相同(否则要打起来了 ...
- JavaScript--时间日期格式化封装
这是一个正常的封装: 其他非正常的请按照以下语句自由搭配 <!DOCTYPE html> <html lang="en"> <head> < ...
- jQuery第3天
复习 如何区别 JS DOM对象和 JQ 包装对象? JQ对象其实是经过包装的DOM对象,包装后可调用 JQ 的方法. JS 对象基本上都是属性为主,JQ基本上都方法为主. 可通过 console.d ...
- python 函数的语法规则