小编Cha*_*thJ的帖子

获取ComboBox的当前索引?

假设我有一个包含这些值的ComboBox:

Black
Red
Blue
Run Code Online (Sandbox Code Playgroud)

Red目前已经选择了.如果用户然后点击退格并点击进入我正在捕捉KeyDownComboBox 的事件.

在这种情况下,我想从ComboBox中的项目列表中删除Red.

但是,由于ComboBox的文本在KeyDown调用时是空白的,因此SelectedIndex为-1.

目前我的解决方法如下:

private void myComboBox_SelectedIndexChanged(object sender, EventArgs e)
{
    currentMyComboBoxIndex = myComboBox.FindStringExact(myComboBox.Text);
}
Run Code Online (Sandbox Code Playgroud)

哪个有效..但我只是想知道是否有更好的方法.看起来这种方式可能会以某种方式破坏,看起来有点混乱.是否无法获取ComboBox的当前索引而无需使用成员变量跟踪它并在索引更改时更新它?

谢谢.

.net c# indexing combobox winforms

4
推荐指数
1
解决办法
5万
查看次数

在 ASP.NET 中绘制两点之间的箭头

我正在 ASP.NET 中动态生成图像。如何绘制箭头而不是下面代码片段中的线条。我找不到任何相关的 API。

Bitmap image = new Bitmap(640, 480);
Graphics graphics = Graphics.FromImage(image);
.
.
graphics.DrawLine(new Pen(Color.Red), lPoint, rPoint);
Run Code Online (Sandbox Code Playgroud)

.net c# asp.net graphics

4
推荐指数
1
解决办法
3372
查看次数

更新数据库中的一对多关系数据

我想更新数据库中具有一对多关系的列表。

例如,有 100 多个科目,学生可以选择他想要的任何内容。假设下次该学生编辑他的选择。

对于这种情况,您更新数据库的方式是什么?我习惯做的是删除所有过去的选择并添加所有新选择的主题。这是非常简单的逻辑,但我只是想知道在性能方面是否有更好的方法来做到这一点。在我的例子中,'delete' 是单个数据库调用,插入 all 是单个数据库连接中的一个循环。

我知道我们可以添加一个逻辑来识别已删除的记录和新添加的记录。这样做真的值得吗?对于类似的情况你会怎么做?

谢谢!

c# sql database sql-server relational-database

3
推荐指数
1
解决办法
2032
查看次数

限制检查c#中的CheckBox

我做了一个胜利表格并给出了一些复选框,显示了学生可以使用的课程,并通过勾选复选框,他将能够告诉他想要做哪些课程,但我想在他检查三门课程时如果他尝试再次尝试要检查第四个复选框,然后应该出现消息框告诉他他不能选择三个以上,并且不应该检查第四个复选框.那我该怎么办呢?

.net c# checkbox winforms

3
推荐指数
1
解决办法
3375
查看次数

以Windows窗体刷新DataGridView

我有两种形式让它成为A型和B.当我点击保存按钮上表BI希望A型的DataGridView的刷新.

我应该使用哪种方法?

.net c# datagridview winforms

3
推荐指数
1
解决办法
7350
查看次数

快速简单的二传手和吸气剂?

允许这样做:

public int Age
{
get;
set;
}
Run Code Online (Sandbox Code Playgroud)

但应用程序是否为变量创建/分配空间?我经常这样做

private int age = 0;
public int Age
{
get { return this.age; }
set { this.age = value; }
}
Run Code Online (Sandbox Code Playgroud)

.net c# automatic-properties

3
推荐指数
1
解决办法
164
查看次数

如何在Visual Studio 2010中查看调试输出?

如何设置Visual Studio以向Aptana Studio 3 提供类似级别的调试输出?我使用的是Visual Studio 2010,C#4.0和Windows Phone 7.1.

我希望它能够自动将所有调试信息输出到控制台,而不必告诉它 - 比如Aptana.

.net c# debugging logging visual-studio-2010

3
推荐指数
2
解决办法
3万
查看次数

在Windows应用程序中以编程方式选择treeview中的节点

我已加载树视图.我想遍历树视图节点并展开并选择一个节点.展开工作正常.但选择一个节点不起作用.

private void Traverse(TreeNodeCollection nodes, string findtext) 
        {
          foreach (TreeNode node in nodes) 
            {
                if (node.Text.ToString().Trim() == findtext)
                {
                    node.Expand();
                    node.TreeView.SelectedNode = node.NextNode;                    

                    //tvwStructureTree.SelectedNode = this.tvwStructureTree.Nodes[node.Index];
//Select a node in Treeview tvwStructureTree But not working
                    tvwStructureTree.SelectedNode = node; 
                    node.TreeView.Focus(); 
                }
                Traverse(node.Nodes, findtext); 
            } 

        }
Run Code Online (Sandbox Code Playgroud)

它在Windows应用程序中.

.net c# windows treeview winforms

3
推荐指数
1
解决办法
2万
查看次数

在调试和发布配置之间指定单独的 .editorconfig 文件

我正在使用 VS 2019 16.8.3,我想在解决方案 .editorconfig 文件中指定一些代码分析规则 (dotnet_diagnostic.CAXXXX.severity),仅适用于发布版本。

当我在 .editorconfig 文件中添加规则时,调试构建时间会增加几分钟。所有分析器复选框均未在项目属性中选择为“在构建时运行”。

所以我想从代码分析中排除调试构建。是否可以仅为发布版本指定 .editorconfig 文件?

或者是否可以禁用此 .editconfig 进行构建并仅适用于手动代码分析?

msbuild visual-studio editorconfig visual-studio-2019

3
推荐指数
1
解决办法
2775
查看次数

使用UDF拆分值对和创建表

我一直在尝试编写一个Table-Valued函数,它将值对作为参数并返回一个包含两列的表.

以下是我正在尝试的功能签名.

FUNCTION [dbo].[ValuePairParser]( @DelimitedValuePairs VARCHAR(MAX),
                                  @Delimiter CHAR(1), 
                                  @ValuePairDelimiter CHAR(1) ) 
  RETURNS @ValuePairTable
  TABLE ( Id INT, Code INT ) 
Run Code Online (Sandbox Code Playgroud)

我想调用下面的方法

@ValuePairs VARCHAR(MAX) = '1:1, 1:2, 1:4, 2:3, 1000:230, 130:120,'

ValuePairParser (@ValuePairs, ',', ':')
Run Code Online (Sandbox Code Playgroud)

你能看到任何好的方法来拆分ValuePairs sting并创建一个包含两列的表吗?

sql t-sql sql-server sql-server-2005 user-defined-functions

2
推荐指数
1
解决办法
1791
查看次数