📄 datacontrolhelper.cs
字号:
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using Sybase.DataWindow;
namespace Qeb.Control
{
internal class DataControlHelper
{
internal static DataTable CovertToDataTable(IDataWindowBase data)
{
QDataWindow dw = null;
QDataStore ds = null;
if ((data as QDataStore) != null)
{
ds = data as QDataStore;
if (string.IsNullOrEmpty(ds.DataWindowObject))
return null;
}
else if ((data as QDataWindow) != null)
{
dw = data as QDataWindow;
if (string.IsNullOrEmpty(dw.DataWindowObject))
return null;
}
else
return null;
DataTable dt = new DataTable();
dt.CaseSensitive = false;
string colName = "";
string colType = "";
for (int i = 1; i < data.ColumnCount+1; i++)
{
colName = data.GetProperty("#" + i.ToString() + ".Name");
colType = data.GetProperty(colName + ".Coltype");
switch (colType.Substring(0, 4))
{
case "date": //date datetime
dt.Columns.Add(colName, typeof(DateTime));
break;
case "char": //char string
dt.Columns.Add(colName, typeof(string));
break;
case "deci": //decimal
dt.Columns.Add(colName, typeof(decimal));
break;
case "numb": //number
case "long":
dt.Columns.Add(colName, typeof(Int64));
break;
default:
throw new Exception("未处理的列类型");
}
}
//添加数据
if (dw != null)
{
for (int i = 1; i < dw.RowCount+1; i++)
{
dt.LoadDataRow(dw.PrimaryData[i], true);
}
for (int i = 1; i < dw.FilteredCount+1; i++)
{
dt.LoadDataRow(dw.FilteredData[i], true);
}
}
else
{
for (int i = 1; i < ds.RowCount+1; i++)
{
dt.LoadDataRow(ds.PrimaryData[i], true);
}
for (int i = 1; i < ds.FilteredCount+1; i++)
{
dt.LoadDataRow(ds.FilteredData[i], true);
}
}
return dt;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -