コード例 #1
0
ファイル: FormMain.cs プロジェクト: ConorSheehan1/nbuexplorer
        private void dataGridViewMessages_SelectionChanged(object sender, EventArgs e)
        {
            if (dataGridViewMessages.SelectedRows.Count > 1)
            {
                DataGridViewSelectedRowCollection sel = dataGridViewMessages.SelectedRows;
                int maxindex = int.MinValue;
                int minindex = int.MaxValue;
                foreach (DataGridViewRow dgr in sel)
                {
                    maxindex = Math.Max(maxindex, dgr.Index + 1);
                    minindex = Math.Min(minindex, dgr.Index + 1);
                }
                toolStripLabelPos.Text = string.Format("{0}...{1} ({2})/{3}", minindex, maxindex, sel.Count, dataGridViewMessages.Rows.Count);
            }
            else if (dataGridViewMessages.SelectedRows.Count == 1)
            {
                toolStripLabelPos.Text = string.Format("{0}/{1}", dataGridViewMessages.SelectedRows[0].Index + 1, dataGridViewMessages.Rows.Count);
            }
            else
            {
                toolStripLabelPos.Text = string.Format("{0}", dataGridViewMessages.Rows.Count);
            }

            try
            {
                DataSetNbuExplorer.MessageRow mr = ((DataRowView)dataGridViewMessages.SelectedRows[0].DataBoundItem).Row as DataSetNbuExplorer.MessageRow;
                textBoxMessage.Text = mr.messagetext.Replace("\n", "\r\n");
            }
            catch
            {
                textBoxMessage.Text = "";
            }
        }
コード例 #2
0
ファイル: FormMain.cs プロジェクト: ConorSheehan1/nbuexplorer
        private void dataGridViewMessages_RowPrePaint(object sender, DataGridViewRowPrePaintEventArgs e)
        {
            try
            {
                DataGridViewRow row = dataGridViewMessages.Rows[e.RowIndex];
                DataSetNbuExplorer.MessageRow mr = ((DataRowView)row.DataBoundItem).Row as DataSetNbuExplorer.MessageRow;

                if (mr.box == "O")
                {
                    row.DefaultCellStyle.BackColor = Color.FromArgb(255, 230, 255);
                }
                else if (mr.box == "I")
                {
                    row.DefaultCellStyle.BackColor = Color.FromArgb(230, 255, 255);
                }
            }
            catch { }
        }
コード例 #3
0
ファイル: FormMain.cs プロジェクト: ConorSheehan1/nbuexplorer
        private static void writeMessageInTextFormat(StreamWriter sw, DataSetNbuExplorer.MessageRow mr, bool formatCsv)
        {
            string msgdirection = "";

            switch (mr.box)
            {
            case "I": msgdirection = "from"; break;

            case "O": msgdirection = "to"; break;
            }

            if (formatCsv)
            {
                sw.WriteLine(string.Format("{0};{1};{2};\"{3}\";\"{4}\"",
                                           mr.IstimeNull() ? "" : mr.time.ToString(),
                                           msgdirection,
                                           mr.number,
                                           (mr.name == mr.number) ? "" : mr.name.Replace("\"", "\"\""),
                                           mr.messagetext.Replace("\"", "\"\"")
                                           ));
            }
            else
            {
                if (!mr.IstimeNull())
                {
                    sw.Write(mr.time.ToString() + " ");
                }
                sw.Write(string.Format("{0} {1}", msgdirection, mr.number).TrimStart());
                if (mr.name != mr.number)
                {
                    sw.Write(" (" + mr.name + ")");
                }
                if (!mr.IsnumberNull())
                {
                    sw.WriteLine(":");
                }
                sw.WriteLine(mr.messagetext.TrimEnd());
                sw.WriteLine();
            }
        }