bindingnavigator(bindingnavigator控件无法移动)
c#中的bindingNavigator
比如:bindingNavigator1.BindingSource=BindingSource1;
bindingNavigator中的按钮事件
private void toolStripButton1_Click(object sender, EventArgs e)
{
try
{
this.BindingSource1.MoveFirst //第一条
//this.BindingSource1.MoveLast //最后一条
//this.BindingSource1.MoveNext //下一条
//this.BindingSource1.MovePrevious;//上一条
}
catch (Exception E)
{
MessageBox.Show("错误:" + E.Message);
}
}
c#中bindingNavigator的用法是什么,求示范……
在界面上放入bindingNavigator1,dataGridView1,button1,button2,textBox1控件,加入引用
using System.Data.OracleClient; 没有就自己添加引用
private BindingSource myBindingSource = new BindingSource();
OracleConnection conn = new OracleConnection("Data Source=xxx;Persist Security Info=True;User ID=xxx;Password=xxx");
private void Form1_Load(object sender, EventArgs e)
{
string sql3 = "select * from xxxx ";
OracleCommand cmd3 = new OracleCommand(sql3, conn);
OracleDataAdapter oda = new OracleDataAdapter(cmd3);
DataSet ds = new DataSet();
oda.Fill(ds);
myBindingSource.DataSource = ds.Tables[0]; //绑定数据源
this.bindingNavigator1.BindingSource = myBindingSource; //数据源跟bindingNavigator1控件相连
this.dataGridView1.DataSource = myBindingSource; //数据源跟dataGridView1控件相连
this.textBox1.DataBindings.Add("Text", myBindingSource, "IP");//数据源跟textBox1控件相连
}
private void button1_Click(object sender, EventArgs e)
{
myBindingSource.MoveNext();
}
private void button2_Click(object sender, EventArgs e)
{
myBindingSource.MovePrevious();
}
bindingNavigator中如何解决DBnull的问题
bindingNavigator????
这是导航控件,和数据本身没关系。导航控件只关系总数,不关心具体数据
如果是具体绑定过程。一般控件都提供给你操作的选项
比如datagirdview,他有大概4种方式
1.默认如果nbnull则显示空字符串
2.对于可简单处理的显示项,我们可以设置 cellstyle的nullvalue属性让他显示dbnull的时候显示为啥
3.对于不能简单用cellstyle显示的复杂显示项,我们一般使用订阅CellFormatting事件,在这个事件里面判定是否为null,然后自己设置e.value的值让其显示(注,这是迫不得已的做法,订阅CellFormatting事件性能上有些问题,大数量不分页状况订阅这个事件系统相应会慢很多)
4.对于3那种情况如果不能忍受,一般可能直接对数据源进行处理了,或者直接在sql部分就加入处理或者在绑定前使用linq手段重载数据源的数据
C#中的bindingNavigator控件
表示窗体上绑定到数据的控件的导航和操作用户界面 (UI)。
命名空间:System.Windows.Forms
程序集:System.Windows.Forms(在 system.windows.forms.dll 中)
将 BindingNavigator 控件添加到窗体并绑定到数据源(例如 BindingSource)时,将自动在此表中建立关系。能使用的控件
移到最前
MoveFirstItem
MoveFirst
前移一步
MovePreviousItem
MovePrevious
当前位置
PositionItem
Current
计数
CountItem
Count
移到下一条记录
MoveNextItem
MoveNext
移到最后
MoveLastItem
MoveLast
新添
AddNewItem
AddNew
删除
DeleteItem
RemoveCurrent
所以其他无关控件基本都不支持了。