使用UserControl时如何对其中的属性进行数据绑定?

yuri****ster UID.879774
2015-03-29 发表

在MainPage.xaml中有如下代码(MyUserControl1为新建的用户控件),后台代码中已绑定含Text属性的数据源集合:
[mw_shl_code=xml,true]<GridView>
<GridView.ItemTemplate>
<DataTemplate>
<local:MyUserControl1 MText="{Binding Text}"/>
</DataTemplate>
</GridView.ItemTemplate>
</GridView>[/mw_shl_code]

用户控件中的描述MText属性的代码:
[mw_shl_code=csharp,true]public string MText
{
get
{
return myText.Text;
}
set
{
myText.Text = value;
}
}[/mw_shl_code]

但是调试时出现了"无法将类型为“Windows.UI.Xaml.Data.Binding”的对象强制转换为类型“System.String”。"(System.InvalidCastException)的异常。
请问应该如何解决?

敬告:
为防止不可控的内容风险,本站已关闭新用户注册,新贴的发表及评论;
你现在看到的内容只是互联网用户曾经发表的言论快照,仅用于老用户留存纪念,且仅与科技行业相关,全部内容不代表本站观点及立场;
本站重新开放前已针对包括用户隐私、版权保护、信息安全、国家政策在内的各种互联网法律法规要求,执行了隐患内容的自查、屏蔽和删除;
本站目前所属个人主体,未有任何盈利安排与计划,且与原WFUN.COM所属公司不存在任何关联关系;
如果本帖内容或者相关资源侵犯到您的合法权益,或者您认为存在问题,那么请您务必点此举报或投诉!
全部回复:
wcavell UID.34926
2015-03-29 回复

public static readonly DependencyProperty TextProperty = DependencyProperty.Register("Text", typeof(string), typeof(MyUserControl1),
new PropertyMetadata(OnBlockTextChanged));

public string Text
{
get { return (string)GetValue(TextProperty); }
set { SetValue(TextProperty, value); SetLinkedText(value); }
}

static void OnBlockTextChanged(DependencyObject obj, DependencyPropertyChangedEventArgs e)
{
}
手机问题,不排版了

方式是这样,你自己改一下吧

把你****了° UID.533743
2015-03-29 回复

开发者都跑这问问题了。。。话说,win10SDK咋样啊?

yuri****ster UID.879774
2015-03-29 回复

Quote***链接停止解析***
public static readonly DependencyProperty TextProperty = DependencyProperty.Register("Text", typeof( ...


谢谢,现在异常没有出现,程序可以运行了。
但是我的GridView中的项目都没有显示我绑定的数据,我在SetValue(TextProperty, value); 处下了个断点,结果调试程序时根本就没有经过这里。
请问这又是什么原因呢?

yuri****ster UID.879774
2015-03-29 回复

Quote***链接停止解析***
谢谢,现在异常没有出现,程序可以运行了。
但是我的GridView中的项目都没有显示我绑定的数据,我在SetVa ...


解决了。。。谢谢

本站使用Golang构建,点击此处申请开源鄂ICP备18029942号-4联系站长投诉/举报