Comobox下拉内容Update请教!
--------------------编程问答-------------------- 什么叫做“删除了”?你是从ComboBox里边删除了它? --------------------编程问答-------------------- 可以刷新一下combox的item或数据源就可以了。或在删除事件里面加上 --------------------编程问答-------------------- 更新数据库后,重新设置ComboBox的数据源。 --------------------编程问答--------------------
private void btnDel_Click(object sender, EventArgs e)--------------------编程问答--------------------
{
if (cmbCourseNum.SelectedIndex == -1)
{
MessageBox.Show("请输入课程编号!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
cmbCourseNum.Focus();
return;
}
for (int i = intCourseDel; i < arrayCur.Length - 1; i++)
arrayCur[i] = arrayCur[i + 1];
arrayCur[arrayCur.Length - 1] = null;
string strFilPath = Directory.GetCurrentDirectory();
string strFilName = strFilPath + "\\course.txt";
if (File.Exists(strFilName))
{
File.Delete(strFilName);
}
FileStream txtFile = new FileStream(strFilName, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None);
StreamWriter txtfileSw = new StreamWriter(txtFile);
txtFile.Seek(0, SeekOrigin.End);
for (int i = 0; i < arrayCur.Length && arrayCur[i] != null; i++)
{
txtfileSw.WriteLine(arrayCur[i].CourseNum);
txtfileSw.WriteLine(arrayCur[i].CourseName);
txtfileSw.WriteLine(arrayCur[i].Credit);
txtfileSw.WriteLine(arrayCur[i].ProOrPub);
txtfileSw.WriteLine(arrayCur[i].NeedOrOpt);
txtfileSw.WriteLine(arrayCur[i].ProfessRange);
}
txtfileSw.Close();
txtFile.Close();
dgvCourseInfoDel.DataSource = 0;
cmbCourseNum.SelectedIndex = -1;
MessageBox.Show("删除成功!", "提示", MessageBoxButtons.OK,MessageBoxIcon.Information );
cmbCourseNum.Update();//这样写不行。。。
}
你没有从ComboBox中去删除它嘛。 --------------------编程问答--------------------
怎样删除?
若没删除,为什么重启窗口之后,查看却没有了的? --------------------编程问答--------------------
请问该怎样改代码?【请参考4楼的代码】 --------------------编程问答--------------------
没用数据库的,只是文件,代码如下:
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.IO;
using System.Collections;
namespace WFMStudentManager
{
public partial class frmCousrDel : Form
{
public clsCourse[] arrayCur = new clsCourse[20];
int intCourseDel = 0;
public frmCousrDel()
{
InitializeComponent();
}
private void frmCousrDel_Load(object sender, EventArgs e)
{
string strFilePath = Directory.GetCurrentDirectory();
string strFileName = strFilePath + "\\course.txt";
FileStream txtFile = new FileStream(strFileName, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None);
StreamReader txtfileSr = new StreamReader(txtFile);
string strLine = txtfileSr.ReadLine();
for (int i = 0; strLine != null; i++)
{
arrayCur[i] = new clsCourse();
arrayCur[i].CourseNum = strLine;//读的顺序与保存的顺序一致,否则信息会存错位置
arrayCur[i].CourseName = txtfileSr.ReadLine();
arrayCur[i].Credit = txtfileSr.ReadLine();
arrayCur[i].ProOrPub = txtfileSr.ReadLine();
arrayCur[i].NeedOrOpt = txtfileSr.ReadLine();
arrayCur[i].ProfessRange = txtfileSr.ReadLine();
//课程编号下拉框:
cmbCourseNum.Items.Add(arrayCur[i].CourseNum);
strLine = txtfileSr.ReadLine();
}
txtfileSr.Close();
txtFile.Close();
}
private void btnInquiry_Click(object sender, EventArgs e)
{
if (cmbCourseNum.SelectedIndex == -1)
{
MessageBox.Show("请输入课程编号!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
cmbCourseNum.Focus();
return;
}
int i;
for (i = 0; i < arrayCur.Length && arrayCur[i] != null; i++)
{
if (arrayCur[i].CourseNum == cmbCourseNum.Text)
break;
}
ArrayList list = new ArrayList();
if (i < arrayCur.Length)
{
list.Add(arrayCur[i]);
this.dgvCourseInfoDel.DataSource = list;
intCourseDel = i;
//按查询按钮后下拉表清空:
//cmbCourseNum.SelectedIndex = -1;
}
}
private void btnDel_Click(object sender, EventArgs e)
{
if (cmbCourseNum.SelectedIndex == -1)
{
MessageBox.Show("请输入课程编号!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
cmbCourseNum.Focus();
return;
}
for (int i = intCourseDel; i < arrayCur.Length - 1; i++)
arrayCur[i] = arrayCur[i + 1];
arrayCur[arrayCur.Length - 1] = null;
string strFilPath = Directory.GetCurrentDirectory();
string strFilName = strFilPath + "\\course.txt";
if (File.Exists(strFilName))
{
File.Delete(strFilName);
}
FileStream txtFile = new FileStream(strFilName, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None);
StreamWriter txtfileSw = new StreamWriter(txtFile);
txtFile.Seek(0, SeekOrigin.End);
for (int i = 0; i < arrayCur.Length && arrayCur[i] != null; i++)
{
txtfileSw.WriteLine(arrayCur[i].CourseNum);
txtfileSw.WriteLine(arrayCur[i].CourseName);
txtfileSw.WriteLine(arrayCur[i].Credit);
txtfileSw.WriteLine(arrayCur[i].ProOrPub);
txtfileSw.WriteLine(arrayCur[i].NeedOrOpt);
txtfileSw.WriteLine(arrayCur[i].ProfessRange);
}
txtfileSw.Close();
txtFile.Close();
dgvCourseInfoDel.DataSource = 0;
cmbCourseNum.SelectedIndex = -1;
MessageBox.Show("删除成功!", "提示", MessageBoxButtons.OK,MessageBoxIcon.Information );
cmbCourseNum.Update();//这样写不行。。。
}
}
}
补充:.NET技术 , C#