标签: binding

与StringFormat的WPF绑定在ToolTips上不起作用

下面的代码有一个简单的绑定,它使用完全相同的Binding表示法将名为MyTextBlock的TextBlock的Text绑定到TextBox的Text和ToolTip属性:

<StackPanel>
    <TextBlock x:Name="MyTextBlock">Foo Bar</TextBlock>
    <TextBox    Text="{Binding ElementName=MyTextBlock, Path=Text, StringFormat='It is: \{0\}'}"
             ToolTip="{Binding ElementName=MyTextBlock, Path=Text, StringFormat='It is: \{0\}'}" />
</StackPanel>
Run Code Online (Sandbox Code Playgroud)

绑定还使用.NET 3.5 SP1引入StringFormat属性,该属性对于上面的Text属性工作正常但似乎在工具提示中被破坏.预期的结果是"它是:Foo Bar",但是当您将鼠标悬停在TextBox上时,ToolTip仅显示绑定值,而不是字符串格式化的值.有任何想法吗?

wpf binding

83
推荐指数
4
解决办法
3万
查看次数

在代码隐藏中定义的绑定对象

我有一些在后面的代码中实例化的对象,例如,XAML被称为window.xaml并且在window.xaml.cs中

protected Dictionary<string, myClass> myDictionary;
Run Code Online (Sandbox Code Playgroud)

如何仅使用XAML标记将此对象绑定到列表视图?

更新:

(这正是我在测试代码中所拥有的):

<Window x:Class="QuizBee.Host.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="{Binding windowname}" Height="300" Width="300"
    DataContext="{Binding RelativeSource={RelativeSource Self}}">
    <Grid>
    </Grid>
</Window>
Run Code Online (Sandbox Code Playgroud)

并在代码隐藏

public partial class Window1 : Window
{
    public const string windowname = "ABCDEFG";

    public Window1()
    {
        InitializeComponent();
    }
}
Run Code Online (Sandbox Code Playgroud)

假设标题应该变成"ABCDEFG"吧?但它最终没有显示任何东西.

.net c# wpf binding

81
推荐指数
4
解决办法
14万
查看次数

WPF绑定自己

我有一个WPF Window,在某个地方有一个ListView我绑定List<string>到的地方.

现在在什么地方我ListView有一个TextBoxContent属性设置为{Binding}.

但这是速记.如何编写完整绑定以绑定到自身?

{Binding Path=Self}不起作用,也不起作用{Binding Self}(后者是前者的捷径).

data-binding wpf binding self

80
推荐指数
1
解决办法
8万
查看次数

早期和晚期绑定

当我在C#中发生早期/晚期绑定时,我正试图解决这个问题.

非虚方法总是早期绑定.虚方法总是后期绑定:编译器插入额外的代码来解析在执行时绑定到的实际方法并检查类型安全性.因此,子类型多态性使用后期绑定.

使用反射调用方法是后期绑定的一个示例.我们编写代码来实现这一点,而不是编译器.(例如,调用COM组件.)

当Option Strict关闭时,VB.NET支持隐式后期绑定.当对象被赋值为声明为Object类型的变量时,该对象是后期绑定的.VB编译器在执行时插入代码以绑定到正确的方法并捕获无效的调用.C#不支持此功能.

我正朝着正确的方向前进吗?

如何调用委托并通过接口引用调用方法?是早期还是晚期绑定?

c# binding late-binding

79
推荐指数
3
解决办法
9万
查看次数

如何将List <string>绑定到DataGridView控件?

我有一个简单的List<string>,我希望它显示在一个DataGridView列中.
如果列表包含更复杂的对象,则只需将列表建立为其DataSource属性的值.

但是当这样做时:

myDataGridView.DataSource = myStringList;
Run Code Online (Sandbox Code Playgroud)

我得到一个名为的列,Length并显示字符串的长度.

如何在列中显示列表中的实际字符串值?

c# binding datagridview

78
推荐指数
5
解决办法
14万
查看次数

76
推荐指数
4
解决办法
9万
查看次数

WPF错误:找不到目标元素的管理FrameworkElement

我有一个带有图像的Row的数据网格.此图像与某个状态的触发器绑定.当状态改变时我想改变图像.

模板本身在DataGridTemplateColumn的HeaderStyle上设置.此模板具有一些绑定.第一个绑定日显示它是什么日期,状态通过触发器更改图像.

这些属性在ViewModel中设置.

属性:

public class HeaderItem
{
    public string Day { get; set; }
    public ValidationStatus State { get; set; }
}

this.HeaderItems = new ObservableCollection<HeaderItem>();
for (int i = 1; i < 15; i++)
{
    this.HeaderItems.Add(new HeaderItem()
    {
        Day = i.ToString(),
        State = ValidationStatus.Nieuw,
    });
}
Run Code Online (Sandbox Code Playgroud)

数据网格:

<DataGrid x:Name="PersoneelsPrestatiesDataGrid" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"
              AutoGenerateColumns="False" SelectionMode="Single" ItemsSource="{Binding CaregiverPerformances}" FrozenColumnCount="1" >

    <DataGridTemplateColumn HeaderStyle="{StaticResource headerCenterAlignment}" Header="{Binding HeaderItems[1]}" Width="50">
        <DataGridTemplateColumn.CellEditingTemplate>
            <DataTemplate>
                <TextBox Text="{ Binding Performances[1].Duration,Converter={StaticResource timeSpanConverter},Mode=TwoWay}"/>
            </DataTemplate>
        </DataGridTemplateColumn.CellEditingTemplate>

        <DataGridTemplateColumn.CellTemplate>
            <DataTemplate>
                <TextBlock TextAlignment="Center" Text="{ Binding …
Run Code Online (Sandbox Code Playgroud)

wpf binding datagrid image multidatatrigger

76
推荐指数
2
解决办法
5万
查看次数

"绑定"属性如何在JSF中起作用?应该何时以及如何使用?

在JSF中有很多材料区分value属性和binding属性.

我对这两种方法如何彼此不同感兴趣.鉴于:

public class User {
    private String name;
    private UICommand link;

    // Getters and setters omitted.
}
Run Code Online (Sandbox Code Playgroud)
<h:form>
    <h:commandLink binding="#{user.link}" value="#{user.name}" />
</h:form>
Run Code Online (Sandbox Code Playgroud)

value指定属性时会发生什么变化.getter运行以返回bean 的name属性值User.该值将打印到HTML输出.

但我无法理解它是如何binding运作的.生成的HTML如何维护与bean link属性的绑定User

下面是手动美化和注释后生成的输出的相关部分(注意id j_id_jsp_1847466274_1是自动生成的,并且有两个隐藏的输入小部件).我正在使用Sun的JSF RI 1.2版.

<form action="/TestJSF/main.jsf" enctype="application/x-www-form-urlencoded"
    id="j_id_jsp_1847466274_1" method="post"  name="j_id_jsp_1847466274_1">
    <input name="j_id_jsp_1847466274_1" type="hidden" value="j_id_jsp_1847466274_1">
    <a href="#" onclick="...">Name</a>
    <input autocomplete="off" id="javax.faces.ViewState" name="javax.faces.ViewState"
        type="hidden" value="-908991273579182886:-7278326187282654551">
</form>
Run Code Online (Sandbox Code Playgroud)

在哪里binding存放在这里?

jsf binding components jsf-2

74
推荐指数
1
解决办法
10万
查看次数

在WPF DataGrid中绑定ComboBoxColumn的ItemsSource

我有两个简单的Model类和一个ViewModel ...

public class GridItem
{
    public string Name { get; set; }
    public int CompanyID { get; set; }
}

public class CompanyItem
{
    public int ID { get; set; }
    public string Name { get; set; }
}

public class ViewModel
{
    public ViewModel()
    {
        GridItems = new ObservableCollection<GridItem>() {
            new GridItem() { Name = "Jim", CompanyID = 1 } };

        CompanyItems = new ObservableCollection<CompanyItem>() {
            new CompanyItem() { ID = 1, Name = "Company 1" },
            new …
Run Code Online (Sandbox Code Playgroud)

.net wpf binding wpfdatagrid datagridcomboboxcolumn

73
推荐指数
5
解决办法
10万
查看次数

绑定到"设置"中定义的值

在WPF中,我可以使用与"设置"中定义的值绑定吗?如果可以,请提供样品.

wpf binding appsettings

72
推荐指数
3
解决办法
4万
查看次数