我正在尝试根据A文本框中的文本对Datagridview进行排序,但是只要我输入一个字母就会抛出一个nullpointer。 datagridview由visual studio 2013生成。
这是我的代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace KoolenEnKoolenApplication
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void debiteurBindingNavigatorSaveItem_Click(object sender, EventArgs e)
{
this.Validate();
this.debiteurBindingSource.EndEdit();
this.tableAdapterManager.UpdateAll(this.knkDataSet);
}
private void Form1_Load(object sender, EventArgs e)
{
// TODO: This line of code loads data into the 'knkDataSet.Debiteur' table. You can move, or remove it, as needed.
this.debiteurTableAdapter.Fill(this.knkDataSet.Debiteur);
}
private void debiteurDataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
try
{
debiteurDataGridView.Rows[e.RowIndex].ReadOnly = true;
}
catch (Exception)
{
Console.Out.WriteLine("er is een error opgetreden");
}
}
private void tbZpk_TextChanged(object sender, EventArgs e)
{
(debiteurBindingSource.DataSource as DataTable).DefaultView.RowFilter = "Zpk like '%" + tbZpk.Text + "%'";
}
}
}
答案 0 :(得分:0)
我相信在调试时,DefaultView
为空。?
在此示例中:http://msdn.microsoft.com/en-us/library/system.data.dataview.rowfilter%28v=vs.110%29.aspx
使用DataTable实例实例化新视图。 e.g:
// Create a DataView
DataView dv = new DataView(dt);
然后使用此视图,而不是DefaultView
。
在没有看到设计师代码的情况下,这是我对解决方案的最佳猜测。