public partial class logRead : Form
{
DataSet ds = new DataSet();
DataTable tab = new DataTable();
public logRead()
{
InitializeComponent();
}
string line;
private void BtnUser_Click(object sender, EventArgs e)
{
DataRow[] filteredRows = tab.Select("Username = '"+cmbUsername.Text+"'");
DataTable dt = filteredRows.CopyToDataTable();
dgv1.DataSource = dt;
txtcount.Text = dgv1.Rows.Count.ToString();
}
private void btnsearch_Click(object sender, EventArgs e)
{
dtmDate.CustomFormat = "dd MMM yyyy hh mm ss";
DataRow[] filteredRows = tab.Select("Datetime = '" +dtmDate.Text + "'");
DataTable dt = filteredRows.CopyToDataTable();
dgv1.DataSource = dt;
}
private void logRead_Load(object sender, EventArgs e)
{
StreamReader strRead = new StreamReader("D:\\login.hml");
string line;
line = strRead.ReadToEnd();
DataRow row = null;
tab.Columns.Add("Ipaddress");
tab.Columns.Add("Sysname");
tab.Columns.Add("Username");
tab.Columns.Add("Text");
tab.Columns.Add("Datetime");
string[] rows = line.Split(new char[] { '\n' }, StringSplitOptions.RemoveEmptyEntries);
foreach (string r in rows)
{
string[] columns = r.Split(new char[] { '|' }, StringSplitOptions.RemoveEmptyEntries);
if (columns.Length <= tab.Columns.Count)
{
row = tab.NewRow();
for (int i = 0; i < columns.Length; i++)
row[i] = columns[i];
tab.Rows.Add(row);
}
}
ds.Tables.Add(tab);
dgv1.DataSource = ds.Tables[0];
txtcount.Text = dgv1.Rows.Count.ToString();
}
}}
私は alogfile を持っており、フォームをロードするときにデータグリッドビューを埋めるコードを書き、一時的にデータテーブルとデータセットを使用してデータグリッドビューに入力し、コンボボックスを使用してすべてのユーザー名を一時的に入力し、コンボボックスの任意の名前をクリックすると、その名前はすべて情報は datagridview に入力します そのコードを btn userclik に書きます 今月ごとまたは日付ごとにログテーブルが必要ですdatagridviewの賢明なデータ、私はコード検索クリックが得られないことを書いています(disはWindowsフォームにあります)もう1つ、データベースも使用していません。コードを確認してください。