2012-12-03 115 views
5

我正在嘗試將WPF的DataGrid綁定到MS SQL數據庫中的表。將Wpf的數據網格綁定到數據庫

1)首先,我創建了一個App.config文件爲followsrrr

<connectionStrings> 
     <add name="ConString" connectionString="Data Source=MYDataSB\SQLExpress; 
     User Id=sa;Password=gm03C3; Initial Catalog=MYDB;"> 
    <connectionStrings/> 

2)其次,我添加了一個DataGrid到我的形式與名稱grdEventLog

 <Grid> 
     <DataGrid Name="grdEventLog"/> 
     </Grid> 

3)然後我加入此代碼到MainWindow.xaml.cs文件如下:

 using System.Data; 
    using System.Data.SqlClient; 
    using System.Web; 

public partial class MainWindow : Window 
{ 
    public MainWindow() 
    { 
     InitializeComponent(); 
     FillDataGrid(); 
    } 

    private void FillDataGrid() 
    { 
     string ConString = ConfigurationManager.ConnectionStrings["ConString"].ConnectionString; 
     string CmdString = string.Empty; 
     using (SqlConnection con = new SqlConnection(ConString)) 
     { 
      CmdString = "SELECT Server,Date,Typ,Msg FROM EventLog"; 
      SqlCommand cmd = new SqlCommand(CmdString, con); 
      SqlDataAdapter sda = new SqlDataAdapter(cmd); 
      DataTable dt = new DataTable("EventLog"); 
      sda.Fill(dt); 
      grdEventLog.ItemsSource = dt.DefaultView; 
     } 
    } 

輸入所有這些條目後,我有錯誤或在ConfigurationManager中指出「該名稱在當前上下文中不存在」

我想添加參考cfgmgr32.dll來克服此錯誤。但它沒有被接受。任何人都可以建議過來這個錯誤?!

對WPF中接近數據綁定的替代建議也很受歡迎。

+0

您是否添加了「using System.Configuration;」 ? –

+1

是的,我已經添加了。 – user1221765

回答

1

問題不在於數據綁定本身。看起來,在配置文件或ConnectionStrings []中使用的密鑰中都有一個輸入錯誤。如果你在這裏發佈stacktrace的整個錯誤,這將會很有用。 P.S.在你的配置文件中有一個錯字。 它應該是不

<connectionStrings> 
     <add name="ConString" connectionString="Data Source=MYDataSB\SQLExpress; 
     User Id=sa;Password=gm03C3; Initial Catalog=MYDB;"> 
    <connectionStrings/> 

<connectionStrings> 
     <add name="ConString" connectionString="Data Source=MYDataSB\SQLExpress; 
     User Id=sa;Password=gm03C3; Initial Catalog=MYDB;"> 
    </connectionStrings> 

見的最後一行。