小编alg*_*eat的帖子

C#winforms组合框动态自动完成

我的问题与此问题类似:如何在C#组合框或文本框中动态更改自动完成条目? 但我仍然没有找到解决方案.

问题简述:

我有一个ComboBox和大量的记录显示在其中.当用户开始输入时,我想加载以输入文本开头的记录,并为用户提供自动完成功能.如上面的主题所述,我无法加载它们?omboBox_TextChanged因为我总是覆盖以前的结果而从未看到它们.

我可以只使用它ComboBox吗?(不TextBoxListBox)

我用这个设置:

?omboBox.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
?omboBox.AutoCompleteSource = AutoCompleteSource.CustomSource;
Run Code Online (Sandbox Code Playgroud)

c# combobox autocomplete dynamic winforms

23
推荐指数
4
解决办法
10万
查看次数

将元素添加到对象数组

这一定非常简单但只是没有让我的语法在这里.假设我们在下面有两个类:

class Student
{
    Subject[] subjects;
}

class Subject
{
    string Name;
    string referenceBook;
}
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

Student univStudent = new Student();
Run Code Online (Sandbox Code Playgroud)

现在,我想在这里添加主题但不能做类似的事情

univStudent.subjects.add(new Subject{....});
Run Code Online (Sandbox Code Playgroud)

如何向此对象数组添加项?

c# arrays collections

20
推荐指数
4
解决办法
15万
查看次数

XML反序列化通用方法

我有下一个XML文件:

<Root>
    <Document>      
        <Id>d639a54f-baca-11e1-8067-001fd09b1dfd</Id>
        <Balance>-24145</Balance>
    </Document>
    <Document>      
        <Id>e3b3b4cd-bb8e-11e1-8067-001fd09b1dfd</Id>
        <Balance>0.28</Balance> 
    </Document>
</Root>
Run Code Online (Sandbox Code Playgroud)

我把它反序列化到这个类:

[XmlRoot("Root", IsNullable = false)]
public class DocBalanceCollection
{
    [XmlElement("Document")]
    public List<DocBalanceItem> DocsBalanceItems = new List<DocBalanceItem>();
}
Run Code Online (Sandbox Code Playgroud)

在哪里DocBalanceItem:

public class DocBalanceItem
{
    [XmlElement("Id")]
    public Guid DocId { get; set; }

    [XmlElement("Balance")]
    public decimal? BalanceAmount { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

这是我的反序列化方法:

public DocBalanceCollection DeserializeDocBalances(string filePath)
{
    var docBalanceCollection = new DocBalanceCollection();

    if (File.Exists(filePath))
    {
        var serializer = new XmlSerializer(docBalanceCollection.GetType());
        TextReader reader = new StreamReader(filePath);
        docBalanceCollection = (DocBalanceCollection)serializer.Deserialize(reader);
        reader.Close(); …
Run Code Online (Sandbox Code Playgroud)

.net c# generics serialization xml-deserialization

10
推荐指数
1
解决办法
5981
查看次数

代表们如何工作(在后台)?

代表们如何在幕后工作?如何有效地使用它们?

编辑:我知道他们如何在表面上工作(它们基本上是函数指针,并允许使用其地址调用某些签名的回调方法).我需要知道的是CLR如何在内部实际实现它们.在定义委托时以及使用委托对象调用回调方法时,幕后究竟发生了什么?

c# delegates

8
推荐指数
2
解决办法
5776
查看次数

Horizo​​ntalAlign.Center无法在GridView中工作

我正在使用ASP数据网格我正在通过代码隐藏(c#)动态绑定数据字段,Header Text.

我也动态设置列的样式所有工作正常,但其中一个Column Horizo​​ntal-align.Center不起作用.

我已经检查过风格是否被覆盖,但它不是......

这个代码块给出了一个问题:

        BoundField field4 = new BoundField();
        field4.DataField = dtdata.Tables[0].Columns["data"].ToString();
        field4.HeaderText = "Percentage%";
        field4.DataFormatString = "{0:N1}%";
        field4.SortExpression = "data";
        field4.ItemStyle.HorizontalAlign = HorizontalAlign.Center;
        grdMarginGrid.Columns.Add(field4);
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮我识别问题所在..

提前谢谢,Divya.

.net c# asp.net

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

反序列化可空类型的最佳实践

我想反序列化以下xml:

<Root>
    <Order> 
        <Id>12</Id>
        <Date>2013-03-28T16:12:45</Date>
        <Number></Number>
        <Amount></Amount>
    </Order>
</Root>
Run Code Online (Sandbox Code Playgroud)

我的课与此类似:

    [XmlType("Order")]
    public class ImportOrder
    {
        [XmlElement("Id")]
        public int OrderId { get; set; }

        [XmlElement("Date")]
        public DateTime OrderDate { get; set; }

        [XmlElement("Number")]
        public string OrderNumber { get; set; }   

        [XmlElement("Amount", IsNullable = true)]
        public decimal? OrderAmount { get; set; }
    }
Run Code Online (Sandbox Code Playgroud)

我使用的反序列化器:

        public List<T> DeserializeList<T>(string filePath, string rootName)
        {
            var itemList = new List<T>();

            if (File.Exists(filePath))
            {
                var serializer = new XmlSerializer(typeof(List<T>), new XmlRootAttribute(rootName));
                TextReader reader = new StreamReader(filePath);
                itemList …
Run Code Online (Sandbox Code Playgroud)

.net c# nullable xml-serialization

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