请看下面的图片

当我使用以下代码单击一个单元格时,我在图中显示的三个文本框中获得所选行值.
void dataGridView1_CellClick_1(object sender, DataGridViewCellEventArgs e) {
TBGRNo.Text = dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString();
TBSName.Text = dataGridView1.Rows[e.RowIndex].Cells[1].Value.ToString();
TBFName.Text = dataGridView1.Rows[e.RowIndex].Cells[2].Value.ToString();
}
Run Code Online (Sandbox Code Playgroud)
我的问题是:我将如何在DevExpress XtraGrid控件中做同样的事情?
我在C#中有一个简单的类:
public class Dog {
public int Age {get; set;}
public string Name {get; set;}
}
Run Code Online (Sandbox Code Playgroud)
我创建了一个像这样的扩展方法:
public static class DogExt {
public static string BarkYourName(this Dog dog) {
return dog.Name + "!!!";
}
}
Run Code Online (Sandbox Code Playgroud)
有没有办法将BarkYourName方法的结果绑定到wpf组件?
基本上:有什么方法可以将它绑定到扩展方法?
是否更好的方法在Paint事件中使用新的Brush,即
protected override void OnPaint(PaintEventArgs e) {
e.Graphics.SmoothingMode = SmoothingMode.AntiAlias;
using (SolidBrush b = new SolidBrush(Color.FromArgb(129, 242, 121))) {
for (int i = 0; i < 12; i++) {
e.Graphics.FillPath(b, path[i]);
}
}
base.OnPaint(e);
}
Run Code Online (Sandbox Code Playgroud)
或者在顶部定义一次并在Dispose方法中处理即
SolidBrush _brush;
protected SolidBrush Brush {
get {
if (_brush == null)
_brush = new SolidBrush(Color.FromArgb(129, 242, 121));
return _brush;
}
}
Run Code Online (Sandbox Code Playgroud) 如何在XtraGrid上只读取一个特定的行单元格(不可编辑)?例如,仅用于行[0]而不是所有行.
我试图从CheckedListBoxControl 中找到特定值的索引。CheckedListBoxControl 具有设置为 DataTable 的 DataSource、DisplayMember、ValueMember 和两列。现在,我必须使用 ValueMember 中的某个值从 CheckedListBoxControl 中查找其索引,然后使用该索引调用SetItemChecked()方法,从而将 CheckedState 属性设置为 true 。
我找不到任何返回索引的属性或方法。请帮忙。
如何隐藏和取消隐藏XtraTabControl的页面?我在XtraTabControl中有几个选项卡如何在按钮单击时隐藏和取消隐藏它们?我使用的是c#,而XtraTabControl是一个DevExpress控件.
我有一个人员数据的表格,名称,姓氏,代码和人物照片.当我从表中选择人员并将结果发送到DevExpress GridControl时,它会显示Name,Surname和Code列.但Photo列显示所有行中的System.Byte []值.问题是什么.
我正在使用DevExpress ComboBoxEdit,我需要将列表绑定到其数据源.但是我可以看到没有方法可以添加数据源来控制,所以我添加了每个项目来逐个控制
foreach (var item in list) {
comboBoxEdit1.Properties.Items.Add(item);
}
Run Code Online (Sandbox Code Playgroud)
它有效,但如果有大量数据则很慢.
有没有办法可以直接绑定列表来控制?
我有一个图像,我可以使用Martix读取它的所有像素颜色...如何更改任何像素的RGB如果我想将其转换为最接近的颜色(黑色,红色或白色)
我在Matrix中读取图像的代码是:
string sourceimg = @"D:\ProductionTools\Taskes\Image Processing\Test\001.jpg";
//...
Bitmap imageoriginal = new Bitmap(sourceimg);
int height = imageoriginal.Height;
int width = imageoriginal.Width;
Color[][] colormatrix = new Color[width][];
for (int i = 0; i < width; i++) {
colormatrix[i] = new Color[height];
for (int j = 0; j < height; j++) {
colormatrix[i][j] = new Color();
colormatrix[i][j] = imageoriginal.GetPixel(i, j);
}
}
Run Code Online (Sandbox Code Playgroud) 这是我现在检测它的方法(这种方法基于桌面包类的内部更改):
public static class FrameworkVersions {
static readonly bool f_nativeMatrix_Exists;
static FrameworkVersions() {
f_nativeMatrix_Exists= typeof(System.Drawing.Drawing2DMatrix)
.GetField("nativeMatrix", BindingFlags.Instance | BindingFlags.NonPublic) != null;
}
public static bool IsNetCore3DesktopPackage {
get{ return !f_nativeMatrix_Exists; }
}
}
Run Code Online (Sandbox Code Playgroud)
最好的方法存在吗?请分享您的经验。