在我的代碼隱藏我已經中類以下內容:綁定一個ObservableCollection <int>到標籤
public ObservableCollection<int> ints;
它的值是在構造函數初始化:
ints = new ObservableCollection<int>();
我再結合一個標籤ints
:
<Label Name="label" Content="{Binding Source={StaticResource ints}, Path=Count}"/>
運行程序後,一個XamlParseException
發生:
System.Windows.StaticResourceExtension '上提供值 '' 拋出 例外'。行號「12」和行位置「20」。
我想這個綁定行有問題。有什麼建議麼?
說明問題的完整演示程序如下:
XAML:
<Window x:Class="BindingObservableCollectionCountLabel.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<DockPanel>
<StackPanel>
<TextBox Name="textBox" Text="10"/>
<Button Name="add" Click="add_Click" Content="Add"/>
<Button Name="del" Click="del_Click" Content="Del"/>
<Label Name="label" Content="{Binding Source={StaticResource ints}, Path=Count}"/>
</StackPanel>
</DockPanel>
</Window>
C#:
using System;
using System.Windows;
using System.Collections.ObjectModel;
namespace BindingObservableCollectionCountLabel
{
public partial class MainWindow : Window
{
public ObservableCollection<int> ints;
public MainWindow()
{
InitializeComponent();
ints = new ObservableCollection<int>();
}
private void add_Click(object sender, RoutedEventArgs e)
{
ints.Add(Convert.ToInt32(textBox.Text));
}
private void del_Click(object sender, RoutedEventArgs e)
{
if (ints.Count > 0) ints.RemoveAt(0);
}
}
}
OK,尋找到這以後,我看到的問題是,'ints'沒有被定義爲資源。現在正在研究如何做到這一點...... – dharmatech