0

こんにちは、私は C# 2010 Windows Forms アプリケーションを使用しています。私のプロジェクトでは、新しいメンバーを追加するときに変数を自動的にインクリメントする方法を知りたいのですが、メンバーを削除すると、リセット メンバーの数が 1 減ります。私の問題を明確にしてくれることを願っています。助けてくれてありがとう......下手な英語でごめんなさい

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace AddressBookInC
{
    class Addresses
    {
        public int AddressID { get; set; }
        public String FirstName { get; set; }
        public String LastName { get; set; }
        public String AddressEmail { get; set; }
        public String PhoneNumber { get; set; }
    }
}
4

6 に答える 6

1

わかりました、今私はあなたが何を望んでいるのか知っています。

List<Address>リスト内のすべてのメンバーを使用して保持する必要があります。

AddressID は 1 ベースだと思います。

新しいメンバーを追加するときは、リスト内の要素の数を新しい AddressID として使用してから、新しいメンバーをリストに追加します。

1 つまたは複数のメンバーを削除した後、リストを AddressID で並べ替えます。リスト内の各メンバーについて、新しい AddressID は、リスト内で 1 ずつインクリメントされた位置になります。

于 2013-05-31T12:59:05.253 に答える
0

たとえば、アドレス帳に名前を付けてイベントを追加AddressBookItemAddedAddressBookItemRemoved、連絡先を追加/削除するたびにそれらを起動します。これらのイベントの eventHandlers では、連絡先の数を増減するだけです。

たとえば、これを確認してください: http://msdn.microsoft.com/en-us/library/aa645739%28v=vs.71%29.aspx

于 2013-05-31T12:59:30.877 に答える
0

これは、新しいクラスが生成されるたびに増加する静的変数を使用して行うことができます。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace AddressBookInC
{
    class Addresses
    {
        private static int _incrementId = 0;

        public Addresses()
        {
            AddressID = _incrementId++;
        }

        public int AddressID { get; set; }
        public String FirstName { get; set; }
        public String LastName { get; set; }
        public String AddressEmail { get; set; }
        public String PhoneNumber { get; set; }
    }
}

場合によっては、データベース自体に任せた方がよい場合もあります。データベースに挿入されるまで、新しいアイテムの ID は 0 です。

于 2013-05-31T14:27:54.733 に答える