问个WPF的问题——
我在后台定义了一个变量PX,并赋值。然后我在<XAML>中写了一个<TextBlock Text="{Binding *******}"/>
我希望TextBlock 的Text绑定PX的值,现在想问问*******部分怎么写啊?坐等高手。

解决方案 »

  1.   

    搞清楚绑定的对象
    必须是clr对象 或者列表对象 或者linq对象
    你一个属性怎么绑定呢 直接写TextBlock.Text=值
    结束了......
      

  2.   


    额,这样么?
    我说具体点吧,我在SQL数据库中保存了一些数据(包括X坐标,Y坐标,名称……),这每一条数据对应底图上的一个点。我现在连接数据库以后把点都显示在了地图上面,现在我想鼠标移动到点上的时候显示一个信息框,想把这个点的其他信息(比如名称)列出来显示。比如:<StackPanel Orientation="Horizontal">
             <TextBlock Text="Population: " FontWeight="Bold" Foreground="#FF0F274E" FontSize="10" VerticalAlignment="Center" />
              <TextBlock Text="{Binding PY}" Foreground="Black" HorizontalAlignment="Left" VerticalAlignment="Center" />
    </StackPanel>
    红色的地方时错误的,我现在在后台定义了一个变量PY,PY的值是点的名称属性值。
    大概就这样吧,不知道说清楚没……
      

  3.   


    首先 如果你的程序是面向对象的
    那么我觉得应该是这样的
    你需要一个对象 里面有属性px,py,name,tootip等
    然后你数据库读取出来数据后实例化对象
    然后使用对象绘制图像
    点的话你可以使用matrixtransform 去定位
    信息的现实可以选择使用鼠标mouseenter mouseleve事件现实tootip
      

  4.   

    是的,用属性,或者变量来赋值<TextBlock Text="{Binding 属性}"/>  www.aaspx.com 提供C# 疑问解答
      

  5.   

    先设你的变量所在的空间 xmlns:local="clr-namespace:空间名"
    Text="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type local:类名称}}, Path=变量}"
      

  6.   

    你是像文字为红色???
     <TextBlock Text="{Binding PY}" Foreground="Red"/>
      

  7.   

    额,这样么?
    我说具体点吧,我在SQL数据库中保存了一些数据(包括X坐标,Y坐标,名称……),这每一条数据对应底图上的一个点。我现在连接数据库以后把点都显示在了地……
    我上面的代码有点问题,是这样的<StackPanel Orientation="Horizontal">
            <TextBlock Text="Population: " FontWeight="Bold" Foreground="#FF0F274E" FontSize="10" VerticalAlignment="Center" />
            <TextBlock Text="{Binding PY}" Foreground="Black" HorizontalAlignment="Left" VerticalAlignment="Center" />
    </StackPanel>
      

  8.   

    binding的需是”属性“,字段不可以绑定。
    那怎么把数据库读出来的一个属性值在后台赋给一个“属性”呢?
    你这几句代码有什么用我没太懂。能不能详细解释下啊?我用你的这个换了似乎也没行
      

  9.   

    我到哪里去看我的变量所在空间啊。。
    我定义的一个变量PY,把数据库里面读出来的一个属性的值赋给PY,然后绑定到Text里面。
    那你说的变量所在空间是什么意思了?哪里看得到
      

  10.   

    没那么麻烦,直接后台构造函数中添加
    DataContext = this;
    然后定义依赖项属性,最后xaml文件中绑定那个依赖项属性的名字即可。
    如果不用依赖项属性,也可以绑定,只不过无法提供更改通知,字段或普通属性值改变的情况下,界面上不会重新自动改变值,因此需要使用依赖项属性。