159 lines
4.4 KiB
C#
159 lines
4.4 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Drawing;
|
|
using System.Data;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Windows.Forms;
|
|
|
|
namespace ControlLib.com
|
|
{
|
|
/// <summary>
|
|
/// 弹出消息容器中单挑记录控件
|
|
/// </summary>
|
|
public partial class SingleSelecter : UserControl
|
|
{
|
|
public SingleSelecter()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 设置信息
|
|
/// </summary>
|
|
/// <param name="MessageId">息者id</param>
|
|
/// <param name="strInfo">消息内容</param>
|
|
public void SetInfo(int MessageId, string strInfo)
|
|
{
|
|
/*
|
|
int LblNum = strInfo.Length; //Label内容长度
|
|
|
|
int RowNum = 10; //每行显示的字数
|
|
float FontWidth = lblFromUser.Width / lblFromUser.Text.Length; //每个字符的宽度
|
|
int RowHeight = 15; //每行的高度
|
|
int ColNum = (LblNum - (LblNum / RowNum) * RowNum) == 0 ? (LblNum / RowNum) : (LblNum / RowNum) + 1; //列数
|
|
lblFromUser.AutoSize = false; //设置AutoSize
|
|
lblFromUser.Width = (int)(FontWidth * 10.0); //设置显示宽度
|
|
lblFromUser.Height = RowHeight * ColNum; //设置显示高度
|
|
*/
|
|
|
|
m_MessageId = MessageId;
|
|
string[] arrContent = strInfo.Split(new char[] { '#' }, StringSplitOptions.RemoveEmptyEntries);
|
|
if (arrContent.Length > 1)
|
|
m_DllName = arrContent[1].Trim() == "无" ? "" : arrContent[1].Trim();
|
|
|
|
//把原来的模式稍微调整了下,不显示动态库名称了
|
|
strInfo = arrContent[0].Trim();
|
|
|
|
int index = strInfo.IndexOf("■");
|
|
if (index == 0)
|
|
{
|
|
index = strInfo.IndexOf(":");
|
|
if (index <= 6 && index > -1)
|
|
strInfo = strInfo.Insert(index, "\n");
|
|
}
|
|
else if(index>0)
|
|
{
|
|
strInfo = strInfo.Insert(index, "\n");
|
|
}
|
|
|
|
if(index == -1)
|
|
index = 0;
|
|
|
|
if (index > 0)
|
|
{
|
|
if (strInfo.Length > 26 + index)
|
|
{
|
|
this.Height = lblFromUser.Height = 50+5;
|
|
}
|
|
else
|
|
this.Height = lblFromUser.Height = 35+5;
|
|
}
|
|
else
|
|
{
|
|
if (strInfo.Length > 26)
|
|
{
|
|
this.Height = lblFromUser.Height = 35+5;
|
|
}
|
|
else
|
|
{
|
|
this.Height = lblFromUser.Height = 20;
|
|
chkInfo.Top = 0;
|
|
}
|
|
}
|
|
|
|
lblFromUser.Text = strInfo;
|
|
this.Width = 400;
|
|
this.lblFromUser.Width = 380;
|
|
|
|
if (m_DllName!="")
|
|
lblFromUser.ForeColor = Color.Red;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 消息id
|
|
/// </summary>
|
|
private int m_MessageId = 0;
|
|
public int MessageId
|
|
{
|
|
get { return m_MessageId; }
|
|
set { m_MessageId = value; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 模块
|
|
/// </summary>
|
|
private string m_DllName = "";
|
|
public string DllName
|
|
{
|
|
get { return m_DllName; }
|
|
set { m_DllName = value; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 发送人
|
|
/// </summary>
|
|
private int m_SenderName = 0;
|
|
public int SenderName
|
|
{
|
|
get { return m_SenderName; }
|
|
set { m_SenderName = value; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 选择框是否勾选
|
|
/// </summary>
|
|
public bool Checked
|
|
{
|
|
get { return chkInfo.Checked; }
|
|
set { chkInfo.Checked = value; }
|
|
}
|
|
|
|
private void SingleSelecter_Load(object sender, EventArgs e)
|
|
{
|
|
|
|
}
|
|
|
|
public Label LblInfo
|
|
{
|
|
get { return lblFromUser; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// 是否控件被选择中
|
|
/// </summary>
|
|
private bool m_Selected = false;
|
|
public bool Selected
|
|
{
|
|
get { return m_Selected; }
|
|
set { m_Selected = value; }
|
|
}
|
|
|
|
private void lblFromUser_Click(object sender, EventArgs e)
|
|
{
|
|
|
|
}
|
|
}
|
|
}
|