小编Rai*_*erM的帖子

使用不同的兼容类型覆盖属性

我需要一个带有属性的基类,在这里我可以派生具有相同属性但不同(兼容)类型的类.基类可以是抽象的.

public class Base
{
    public virtual object prop { get; set; }
}

public class StrBase : Base
{
    public override string prop { get; set; } // compiler error
}

public class UseIt
{
    public void use()
    {
        List<Base> l = new List<Base>();
        //...
    }
}
Run Code Online (Sandbox Code Playgroud)

我尝试使用Generics但是在使用该类时会给我一个问题,因为我想在List中存储不同类型的基类.

public class BaseG<T>
{
    public T prop { get; set; }
}

public class UseIt
{
    public void use()
    {
        List<BaseG> l = new List<BaseG>(); // requires type argument
        //...
    } …
Run Code Online (Sandbox Code Playgroud)

c# generics inheritance properties .net-2.0

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

如何选择并滚动到Datagridview中的新行?

我有一个绑定到数据库表的DataGridView.DataGridView不可编辑,有一些文本字段可以编辑数据,这些字段由按钮控制.我有一个NewRow按钮,代码如下:

        dataGridView1.AllowUserToAddRows = true;
        foreach (DataGridViewRow row in dataGridView1.Rows)
        {
            if (row.Selected)
            { row.Selected = false; }
        } 
        dataGridView1.Rows[dataGridView1.NewRowIndex].Selected = true;
Run Code Online (Sandbox Code Playgroud)

我需要的是:

  • datagridview应滚动到底部(newRow所在的位置)
  • 应该关注newRow,以便textfields显示新的(空)行(内容)

我试过了:

        bindSourceGS.Position = dataGridView1.NewRowIndex;
Run Code Online (Sandbox Code Playgroud)

但是这并没有选择datagridview的newRow.我想使用datagridview的newRow,因为当用户按下取消按钮时,我不必删除数据集中的行,而datagridview.Rows [i]有一个IsNewRow属性.

.net datagridview

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

如何在不导入root证书的情况下验证X509证书?

我的程序包含我知道并信任的2个根证书.我必须验证信任中心的证书和信任中心颁发的"用户"证书,这些证书都来自这两个根证书.

我使用X509Chain类进行验证,但只有在根证书位于Windows证书库中时才有效.

我正在寻找一种方法来验证证书而不导入根证书 - 以某种方式告诉X509Chain类我确实信任这个根证书,它应该只检查链中的证书而没有别的.

实际代码:

        X509Chain chain = new X509Chain();
        chain.ChainPolicy.RevocationMode = X509RevocationMode.NoCheck;
        chain.ChainPolicy.ExtraStore.Add(root); // i do trust this
        chain.ChainPolicy.ExtraStore.Add(trust);
        chain.Build(cert);
Run Code Online (Sandbox Code Playgroud)

编辑:这是一个.NET 2.0 Winforms应用程序.

.net verify x509certificate

12
推荐指数
3
解决办法
7816
查看次数