I'm attempting to control a datagridview filter via a treeview. I'm having difficulty getting it to function successfully. It says I have a missing operand, and when I edit the name of the column, it says it does not exist, even though it does. The datagridview is "dropped and dragged" from the database explorer.
Here is my code :
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlServerCe;
namespace Lewis_Warby_Airbrushing
{
public partial class orderForm : Form
{
private DataTable orderTBL = new DataTable();
SqlCeConnection conn = new SqlCeConnection(@"Data Source=|DataDirectory|\LWADataBase.sdf");
public orderForm()
{
InitializeComponent();
}
neworderForm neworderForm = new neworderForm();
private void addBTN_Click(object sender, EventArgs e)
{
if (neworderForm == null || neworderForm.IsDisposed == true)
neworderForm = new neworderForm();
neworderForm.ShowDialog();
this.orderTBLTableAdapter.Fill(this.lWADataBaseDataSet.orderTBL);
}
public void ordersForm_Load(object sender, EventArgs e)
{
// TODO: This line of code loads data into the 'lWADataBaseDataSet.orderTBL' table. You can move, or remove it, as needed.
this.orderTBLTableAdapter.Fill(this.lWADataBaseDataSet.orderTBL);
string sOrder = null;
int I = 0;
for (I = 0; (I <= (orderTBL.Rows.Count - 1)); I++)
{
sOrder = orderTBL.Rows[1][1].ToString();
treeView1.Nodes[0].Nodes.Add( sOrder);
}
}
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
if ((treeView1.SelectedNode == null))
{
orderTBLDataGridView.DataSource = null;
return;
}
if ((treeView1.SelectedNode.Name == "root"))
{
orderTBLDataGridView.DataSource = null;
return;
}
string sOrder;
sOrder = treeView1.SelectedNode.Name;
DataView dv = new DataView(orderTBL);
dv.RowFilter = "Order Number"+ sOrder;
orderTBLDataGridView.DataSource = dv;
}
private void orderForm_Shown(object sender, EventArgs e)
{
try
{
conn.Open();
}
catch (SqlCeException ex)
{
MessageBox.Show(ex.Message);
return;
}
treeView1.Nodes.Clear();
SqlCeCommand cmd = new SqlCeCommand("SELECT * FROM orderTBL ORDER BY[Order Number] ASC", conn);
try
{
SqlCeDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
TreeNode node = new TreeNode(dr["Order Number"].ToString());
treeView1.Nodes.Add(node);
}
}
catch (SqlCeException ex)
{
MessageBox.Show(ex.Message);
return;
}
conn.Close();
}
}
}
I'm using SqlCe 3.5 and C#. Here is the design of the form.