从数据库中得到IP地址,在DataGridView中排序

下面的代码就是把数据库中的IP地址给格式化了。然后在显示的时候在格式化了。

代码条件:

一个dataGridview

实现一个CellFormatting

private void Form1_Load(object sender, EventArgs e)
        {
            //SqlConnection sc = new SqlConnection(scsb.ConnectionString);
            //sc.Open();
            //SqlDataAdapter sda = new SqlDataAdapter("SELECT IP_ADDR FROM TABLE1", sc);
            DataTable dt = new DataTable();
            //sda.Fill(dt);

//上面是获得数据库的过程 。忽略。
            dt.Columns.Add("IP_ADDR");
            dt.Rows.Add("192.168.0.21");
            dt.Rows.Add("192.168.0.5");
            dt.Rows.Add("192.168.0.8");

            dt.Rows.Add("192.168.0.9");

            dt.Rows.Add("192.168.0.10");

            dt.Rows.Add("192.168.0.68");
            TranmitIP(ref dt);
            dataGridView1.DataSource = dt;
        }
        private void TranmitIP(ref DataTable dt)
        {
            for (int i = 0; i < dt.Rows.Count;i++ )
            {
                String strTemp = dt.Rows[i][0].ToString();
                String[] strArrTemp = strTemp.Split('.');
                for (int j = 0; j<strArrTemp.Length; j++)
                {
                     strArrTemp[j] = "0x" + Convert.ToInt32(strArrTemp[j]).ToString("X2"); ;
                     strArrTemp[j] += ".";
                }
                strArrTemp[strArrTemp.Length - 1] = strArrTemp[strArrTemp.Length - 1].Substring(0, strArrTemp[strArrTemp.Length - 1].Length - 1);
                dt.Rows[i][0] = String.Concat(strArrTemp );
            }
        }

        private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
        {
            if (e.Value == null)
            {
                return;
            }
            String strTemp = e.Value.ToString();
            IPAddress a = IPAddress.Parse(strTemp);
            e.Value = a.ToString();

        }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值