关于wpf绑定和.net版本的影响 求各路大神帮助

Vida Wang 2017-05-22 02:33:41
xaml:
<Window x:Class="Anything.Form.wndTip"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:Anything.Form"
xmlns:cls="clr-namespace:Anything.Class"
mc:Ignorable="d"
Title="wndTip"
Height="{Binding ElementName=txt,Path=ActualHeight}"
Width="{Binding ElementName=txt, Path=ActualWidth}"
AllowsTransparency="True"
Opacity="0"
Background="Transparent"

WindowStyle="None" >
<Border x:Name="BdrOut" Background="#FF0033a0" CornerRadius="5" BorderThickness="2"
Width="auto"
Height="auto" >
<Border x:Name="BdrIn" Background="#FFeeeeee" BorderThickness="1" CornerRadius="3"
Width="auto"
Height="auto">
<TextBlock x:Name="txt" FontSize="16" Padding="5" HorizontalAlignment="Center" VerticalAlignment="Center"
Text="{Binding RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type local:wndTip}},Path=Tip}" >
</TextBlock>
</Border>
</Border>
</Window>


后台关联的依赖项属性:
public string Tip
{
get { return (string)GetValue(TipProperty); }
set { SetValue(TipProperty, value); }
}
public static readonly DependencyProperty TipProperty =
DependencyProperty.Register("Tip", typeof(string), typeof(wndTip), new PropertyMetadata("This is tip"));



app.config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2"/>
</startup>
</configuration>




app.config(3.5):
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v2.0.50727"/>
</startup>
</configuration>



上述代码在.Net版本3.5时绑定正常,切换到4.0以上就不行了,窗体的绑定出现异常,因为使用了Border包装成了圆角,在4.0的时候就成了一个特别小的圆形,3.5时可以正常显示,求大神给个解释和解决方法!
...全文
150 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Vida Wang 2017-05-22
  • 打赏
  • 举报
回复
引用 8 楼 daaread 的回复:
[quote=引用 7 楼 duanzi_peng 的回复:] [quote=引用 6 楼 vidamcmillan的回复:][quote=引用 5 楼 duanzi_peng 的回复:] [quote=引用 4 楼 daaread 的回复:] [quote=引用 3 楼 duanzi_peng 的回复:] 窗体的绑定出现异常 -》 异常贴出来
大神,异常就是上图显示的问题,代码不报错[/quote] 这,,任何版本下,把border的width与height 设置成一个固定的数值,不要设置成auto 测试。 这貌似与WPF的布局测量计算大小有关系把。[/quote] 大神,设置固定大小问题依旧,与之前区别是这样窗体就像被截断了一样,因为右边和下边就没有圆角了,如图[/quote] 把窗口的宽高,不要用binding。有一个sizetocontent属性。你绑定的目的是让它根据内容显示大小吧[/quote]恩,是的[/quote]我搞定了,谢谢大神的指点!
Vida Wang 2017-05-22
  • 打赏
  • 举报
回复
引用 7 楼 duanzi_peng 的回复:
[quote=引用 6 楼 vidamcmillan的回复:][quote=引用 5 楼 duanzi_peng 的回复:] [quote=引用 4 楼 daaread 的回复:] [quote=引用 3 楼 duanzi_peng 的回复:] 窗体的绑定出现异常 -》 异常贴出来
大神,异常就是上图显示的问题,代码不报错[/quote] 这,,任何版本下,把border的width与height 设置成一个固定的数值,不要设置成auto 测试。 这貌似与WPF的布局测量计算大小有关系把。[/quote] 大神,设置固定大小问题依旧,与之前区别是这样窗体就像被截断了一样,因为右边和下边就没有圆角了,如图[/quote] 把窗口的宽高,不要用binding。有一个sizetocontent属性。你绑定的目的是让它根据内容显示大小吧[/quote]恩,是的
  • 打赏
  • 举报
回复
引用 6 楼 vidamcmillan的回复:
[quote=引用 5 楼 duanzi_peng 的回复:]
[quote=引用 4 楼 daaread 的回复:]
[quote=引用 3 楼 duanzi_peng 的回复:]
窗体的绑定出现异常
-》 异常贴出来

大神,异常就是上图显示的问题,代码不报错[/quote]
这,,任何版本下,把border的width与height 设置成一个固定的数值,不要设置成auto 测试。 这貌似与WPF的布局测量计算大小有关系把。[/quote]
大神,设置固定大小问题依旧,与之前区别是这样窗体就像被截断了一样,因为右边和下边就没有圆角了,如图[/quote] 把窗口的宽高,不要用binding。有一个sizetocontent属性。你绑定的目的是让它根据内容显示大小吧
Vida Wang 2017-05-22
  • 打赏
  • 举报
回复
引用 5 楼 duanzi_peng 的回复:
[quote=引用 4 楼 daaread 的回复:]
[quote=引用 3 楼 duanzi_peng 的回复:]
窗体的绑定出现异常
-》 异常贴出来

大神,异常就是上图显示的问题,代码不报错[/quote]
这,,任何版本下,把border的width与height 设置成一个固定的数值,不要设置成auto 测试。 这貌似与WPF的布局测量计算大小有关系把。[/quote]
大神,设置固定大小问题依旧,与之前区别是这样窗体就像被截断了一样,因为右边和下边就没有圆角了,如图
  • 打赏
  • 举报
回复
窗体的绑定出现异常 -》你倒是把异常贴出来 在4.0的时候就成了一个特别小的圆形,3.5时可以正常显示 -》 不清楚具体指的那个border
  • 打赏
  • 举报
回复
引用 4 楼 daaread 的回复:
[quote=引用 3 楼 duanzi_peng 的回复:] 窗体的绑定出现异常 -》 异常贴出来
大神,异常就是上图显示的问题,代码不报错[/quote] 这,,任何版本下,把border的width与height 设置成一个固定的数值,不要设置成auto 测试。 这貌似与WPF的布局测量计算大小有关系把。
Vida Wang 2017-05-22
  • 打赏
  • 举报
回复
引用 3 楼 duanzi_peng 的回复:
窗体的绑定出现异常 -》 异常贴出来
大神,异常就是上图显示的问题,代码不报错
  • 打赏
  • 举报
回复
窗体的绑定出现异常 -》 异常贴出来
Vida Wang 2017-05-22
  • 打赏
  • 举报
回复
引用 1 楼 duanzi_peng 的回复:
窗体的绑定出现异常
-》你倒是把异常贴出来


在4.0的时候就成了一个特别小的圆形,3.5时可以正常显示
-》 不清楚具体指的那个border

是这样的这是正常情况

这是不正常的

8,757

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧