请教一个关于用dataset搜索数据问题
我在一个工程里面创建了3个窗口,他们都使用同一个dataset但是我使用
DataRow[] drSelect = this.权限管理DataSet.权限管理.Select("用户账号=" + "01");
时在form3的窗口中搜索不到数据,在其他2个窗口中找得到,
我说明 我form2是form1的子窗口,form1是form3的子窗口
2012-01-08 15:17
2012-01-08 15:25
程序代码:using System;
using System.Collections.Generic;
using using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace WindowsApplication1
{
public partial class authorityForm : Form
{
private string use_Account = string.Empty;
private string use_Password = string.Empty;
private string use_name = string.Empty;
private bool lesson_Query;
private bool lesson_Add;
private bool lesson_Del;
private bool score_Query;
private bool score_Add;
private bool score_Del;
private bool score_Edit;
private string use_Message = string.Empty;
private bool save_Sign = false;
public authorityForm()
{
InitializeComponent();
}
private void authorityForm_Load(object sender, EventArgs e)
{
// TODO: This line of code loads data into the '权限管理DataSet.权限管理' table. You can move, or remove it, as needed.
this.权限管理TableAdapter.Fill(this.权限管理DataSet.权限管理);
}
private void update_DataSet()
{
this.权限管理TableAdapter.UpdateQuery(
use_name,
lesson_Query,
lesson_Add,
lesson_Del,
score_Query,
score_Add,
score_Del,
score_Edit,
use_Message,
use_Account);
save_Sign = false;
}
private void saveBtn_Click(object sender, EventArgs e)
{
update_DataSet();
DialogResult result = MessageBox.Show("是否保存?", "保存提示", MessageBoxButtons.OK);
if (result == DialogResult.OK)
{
DataRow[] drSelect = this.权限管理DataSet.权限管理.Select("用户账号=" + "01"); 这里时form1,搜索得到
DataRow editDr = drSelect[0];
this.权限管理TableAdapter.Update(this.权限管理DataSet.权限管理);
save_Sign = true;
this.权限管理TableAdapter.Fill(this.权限管理DataSet.权限管理);
}
}
private void closeBtn_Click(object sender, EventArgs e)
{
DialogResult result = MessageBox.Show("是否退出?", "退出提示", MessageBoxButtons.OKCancel);
if (result == DialogResult.OK)
{
if (save_Sign == false)
{
this.权限管理BindingSource.CancelEdit();
}
this.Close();
}
else
{
this.权限管理TableAdapter.Fill(this.权限管理DataSet.权限管理);
}
}
private void delBtn_Click(object sender, EventArgs e)
{
this.权限管理BindingSource.RemoveCurrent();
}
private void accountTextBox_TextChanged(object sender, EventArgs e)
{
use_Account = accountTextBox.Text.ToString();
}
private void passwordTextBox_TextChanged(object sender, EventArgs e)
{
use_Password = passwordTextBox.Text.ToString();
}
private void nameTextBox_TextChanged(object sender, EventArgs e)
{
use_name = nameTextBox.Text.ToString();
}
private void messageTextBox_TextChanged(object sender, EventArgs e)
{
use_Message = messageTextBox.Text.ToString();
}
private void lessonQueryCheckBox_CheckedChanged(object sender, EventArgs e)
{
lesson_Query = lessonQueryCheckBox.Checked;
lessonCheckBox_State();
}
private void lessonAddCheckBox_CheckedChanged(object sender, EventArgs e)
{
lesson_Add = lessonAddCheckBox.Checked;
lessonCheckBox_State();
}
private void lessonDelCheckBox_CheckedChanged(object sender, EventArgs e)
{
lesson_Del = lessonDelCheckBox.Checked;
lessonCheckBox_State();
}
private void scoreQueryCheckBox_CheckedChanged(object sender, EventArgs e)
{
score_Query = scoreQueryCheckBox.Checked;
scoreCheckBox_State();
}
private void scoreAddCheckBox_CheckedChanged(object sender, EventArgs e)
{
score_Add = scoreAddCheckBox.Checked;
scoreCheckBox_State();
}
private void scoreDelCheckBox_CheckedChanged(object sender, EventArgs e)
{
score_Del = scoreDelCheckBox.Checked;
scoreCheckBox_State();
}
private void scoreEditCheckBox_CheckedChanged(object sender, EventArgs e)
{
score_Edit = scoreEditCheckBox.Checked;
scoreCheckBox_State();
}
private void lessonCheckBox_State()
{
if (lesson_Query == lesson_Add)
{
if (lesson_Add == lesson_Del)
{
if (lesson_Query)
{
lessonCheckBox.CheckState = CheckState.Checked;
}
else
{
lessonCheckBox.CheckState = CheckState.Unchecked;
}
}
else
{
lessonCheckBox.CheckState = CheckState.Indeterminate;
}
}
else
{
lessonCheckBox.CheckState = CheckState.Indeterminate;
}
}
private void lessonCheckBox_CheckedChanged(object sender, EventArgs e)
{
if (lessonCheckBox.CheckState == CheckState.Checked)
{
lessonQueryCheckBox.Checked = true;
lessonAddCheckBox.Checked = true;
lessonDelCheckBox.Checked = true;
}
else if (lessonCheckBox.CheckState == CheckState.Unchecked)
{
lessonQueryCheckBox.Checked = false;
lessonAddCheckBox.Checked = false;
lessonDelCheckBox.Checked = false;
}
//lessonCheckBox_State();
//MessageBox.Show(lessonQueryCheckBox.Checked.ToString() + lessonAddCheckBox.Checked.ToString() + lessonDelCheckBox.Checked.ToString());
}
private void scoreCheckBox_State()
{
if (score_Query == score_Add)
{
if (score_Add == score_Del)
{
if( score_Del==score_Edit)
{
if (score_Query)
{
scoreCheckBox.CheckState = CheckState.Checked;
}
else
{
scoreCheckBox.CheckState = CheckState.Unchecked;
}
}
else
{
scoreCheckBox.CheckState = CheckState.Indeterminate;
}
}
else
{
scoreCheckBox.CheckState = CheckState.Indeterminate;
}
}
else
{
scoreCheckBox.CheckState = CheckState.Indeterminate;
}
}
private void scoreCheckBox_CheckedChanged(object sender, EventArgs e)
{
if (scoreCheckBox.CheckState == CheckState.Checked)
{
scoreQueryCheckBox.Checked = true;
scoreAddCheckBox.Checked = true;
scoreDelCheckBox.Checked = true;
scoreEditCheckBox.Checked = true;
}
else if (scoreCheckBox.CheckState == CheckState.Unchecked)
{
scoreQueryCheckBox.Checked = false;
scoreAddCheckBox.Checked = false;
scoreDelCheckBox.Checked = false;
scoreEditCheckBox.Checked = false;
}
}
private void useListBox1_SelectedIndexChanged(object sender, EventArgs e)
{
update_DataSet();
}
private void passwordEditBtn_Click(object sender, EventArgs e)
{
PasswordForm passwordFrom = new PasswordForm(use_Account);
passwordFrom.Tag = this;
this.Hide();
passwordFrom.Show();
}
private void AddBtn_Click(object sender, EventArgs e)
{
}
}
}
2012-01-08 15:34
程序代码:using System;
using System.Collections.Generic;
using using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace WindowsApplication1
{
public partial class loginForm : Form
{
private string account = string.Empty;
private string password = string.Empty;
public loginForm()
{
InitializeComponent();
}
private void loginForm_Load(object sender, EventArgs e)
{
// TODO: This line of code loads data into the '权限管理DataSet.权限管理' table. You can move, or remove it, as needed.
this.权限管理TableAdapter.Fill(this.权限管理DataSet.权限管理);
}
private void accountTextBox_TextChanged(object sender, EventArgs e)
{
account = accountTextBox.Text.ToString();
}
private void passwTextBox_TextChanged(object sender, EventArgs e)
{
password = passwTextBox.Text.ToString();
}
private void loginBtn_Click(object sender, EventArgs e)
{
if (account != string.Empty)
{
DataRow[] drSelect = this.权限管理DataSet.权限管理.Select("用户账号=" + "01"); 这里搜索不到
//DataRow editDr = drSelect[0];
if (drSelect.Length > 0)
{
DataRow editDr = drSelect[0];
if (password.Equals(editDr["密码"].ToString()))
{
if (password.Equals("00"))
{
authorityForm authorityForm = new authorityForm();
this.Close();
authorityForm.Show();
}
else
{ }
}
else
{
MessageBox.Show("密码错误,请重新输入!", "提示", MessageBoxButtons.OK);
passwTextBox.SelectAll();
passwTextBox.Focus();
}
}
else
{
MessageBox.Show("用户不存在,请重新输入!", "提示", MessageBoxButtons.OK);
accountTextBox.SelectAll();
accountTextBox.Focus();
}
}
else
{
MessageBox.Show("请输入用户名!", "提示", MessageBoxButtons.OK);
accountTextBox.SelectAll();
accountTextBox.Focus();
}
}
private void closeBtn_Click(object sender, EventArgs e)
{
}
}
}
2012-01-08 15:35
程序代码: //
// loginForm
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(243, 191);
this.Controls.Add(this.closeBtn);
this.Controls.Add(this.loginBtn);
this.Controls.Add(this.passwTextBox);
this.Controls.Add(this.accountTextBox);
this.Controls.Add(this.passwLabel);
this.Controls.Add(this.accountLabel);
this.Name = "loginForm";
this.Text = "登录窗口";
this.Load += new System.EventHandler(this.loginForm_Load);
(()(this.权限管理DataSet)).EndInit();
(()(this.权限管理BindingSource)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
2012-01-08 16:40
2012-01-08 17:12