I'm new to WPF. I have been been playing around with binding data to a grid. However the example below never calls the method that will be used to populate the grid. What do I need to do to make this go?
<Window x:Class="DataGridView.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:local="clr-namespace:DataGridView"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:dg="http://schemas.microsoft.com/wpf/2008/toolkit"
Title="Window1" Height="538" Width="681"
xmlns:my="http://schemas.microsoft.com/wpf/2008/toolkit">
<Window.Resources>
<ObjectDataProvider x:Key="CurrencyConversionList" ObjectType="{x:Type local:CurrencyDataProvider}" MethodName="GetCurrencyConversionList" />
<ObjectDataProvider x:Key="CurrencyList" ObjectType="{x:Type local:CurrencyDataProvider}" MethodName="GetCurrencyList" />
</Window.Resources>
<Grid>
<dg:DataGrid Name="dataGrid1" AutoGenerateColumns="False" Height="255" Width="481" ItemsSource="{Binding Path=Table}"
ClipToBounds="False">
<dg:DataGrid.Columns>
<dg:DataGridTextColumn Binding="{Binding Path=START_DATE, Mode=TwoWay}" Header="Start Date" />
<dg:DataGridTextColumn Binding="{Binding Path=END_DATE, Mode=TwoWay}" Header="End Date" />
<dg:DataGridComboBoxColumn SelectedValueBinding="{Binding CURRENCY_ID}" SelectedValuePath="FROM_CURRENCY_ID"
DisplayMemberPath="FROM_CURRENCY_ID" Header="From Currency"
ItemsSource="{Binding Source={StaticResource CurrencyList}}">
</dg:DataGridComboBoxColumn>
<dg:DataGridComboBoxColumn SelectedValueBinding="{Binding CURRENCY_ID}" SelectedValuePath="CURRENCY_ID"
DisplayMemberPath="ContactName" Header="To Currency"></dg:DataGridComboBoxColumn>
<dg:DataGridTextColumn Binding="{Binding Path=CONVERSION_RATE, Mode=TwoWay}" Header="Rate" />
</dg:DataGrid.Columns>
</dg:DataGrid>
</Grid>
</Window>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace DataGridView
{
/// <summary>
/// Interaction logic for Window1.xaml
/// </summary>
public partial class Window1: Window
{
private QualityDataSet qualityDataSet;
private qualityDataSetTableAdapters.CURRENCY_CONVERSIONTableAdapter cURRENCY_CONVERSIONTableAdapter;
private qualityDataSetTableAdapters.CURRENCYTableAdapter cURRENCYTableAdapter;
public Window1()
{
InitializeComponent();
}
}
}
namespace DataGridView
{
class CurrencyDataProvider
{
private QualityDataSet qualityDataSet;
private QualityDataSetTableAdapters.CURRENCY_CONVERSIONTableAdapter cURRENCY_CONVERSIONTableAdapter;
private QualityDataSetTableAdapters.CURRENCYTableAdapter cURRENCYTableAdapter;
public DataView GetCurrencyList()
{
qualityDataSet = new QualityDataSet();
cURRENCYTableAdapter = new QualityDataSetTableAdapters.CURRENCYTableAdapter();
cURRENCYTableAdapter.Fill(this. qualityDataSet.CURRENCY);
return this. qualityDataSet.CURRENCY.DefaultView;
}
public DataView GetCurrencyConversionList()
{
qualityDataSet = new QualityDataSet();
cURRENCY_CONVERSIONTableAdapter = new QualityDataSetTableAdapters.CURRENCY_CONVERSIONTableAdapter();
cURRENCY_CONVERSIONTableAdapter.Fill(this. qualityDataSet.CURRENCY_CONVERSION);
return this. qualityDataSet.CURRENCY_CONVERSION.DefaultView;
}
}
}