自动添加删除按钮(c#)

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using ZyjLib.Net;

namespace WindowsApplication32
{
public partial class Form1 : Form
{

public Form1()
{
InitializeComponent();
CheckForIllegalCrossThreadCalls = false;
}

int iCnt = 0;
private void button1_Click(object sender, EventArgs e)
{
TextBox tb = new TextBox();
tb.Name = "MyTb" + iCnt.ToString();
tb.Size = new Size(63,21);
tb.Location = new Point(63 * iCnt, 0);
panel1.Controls.Add(tb);
iCnt++;
}

private void button2_Click(object sender, EventArgs e)
{
foreach(Control ct in panel1.Controls )
{
if (ct.Name == "MyTb" + (iCnt - 1).ToString())
{
panel1.Controls.Remove(ct);
iCnt--;
}
}

}

private void numericUpDown1_ValueChanged(object sender, EventArgs e)
{
if (panel2.Controls.Count < numericUpDown1.Value)
{
TextBox tb = new TextBox();
tb.Name = "MyTb" + numericUpDown1.Value.ToString();
tb.Size = new Size(63, 21);
tb.Location = new Point(63 * ((int)numericUpDown1.Value - 1), 0);
panel2.Controls.Add(tb);
}
else
{
foreach (Control ct in panel2.Controls)
{
if (ct.Name == "MyTb" + (numericUpDown1.Value + 1).ToString())
{
panel2.Controls.Remove(ct);
}
}
}
}

private void Form1_Load(object sender, EventArgs e)
{
numericUpDown1_ValueChanged(null,null);
}

MyServer[] myserver;
private void button3_Click(object sender, EventArgs e)
{
button3.Enabled = false;
myserver = new MyServer[panel2.Controls.Count];
for (int i = 0; i < panel2.Controls.Count; i++)
{
TextBox tb = (TextBox)panel2.Controls.Find("MyTb" + (i+1).ToString(), true)[0];
myserver[i] = new MyServer(this,int.Parse(tb.Text));
}
}


}

public class MyServer
{
public SocketTcpSrv server;
Form1 form1;
public MyServer(Form1 form, int Port)
{
form1 = form;
server = new SocketTcpSrv();
server.DataRecv += new TcpRecvEventHandler(server_DataRecv);
server.Open(Port);
}

void server_DataRecv(object sender, EventArgsTcpData e)
{
string str = System.Text.Encoding.Default.GetString(e.Buffer);
form1.richTextBox1.AppendText(e.SocketTcpCon.LocalPort.ToString() + "端口接收" + str);
}
}
}

转载于:https://www.cnblogs.com/boxwork/archive/2012/09/02/2667891.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值