using System;
using System.Collections;
using System.Text;
namespace Zhaizj.Framework {
///
/// 根据插入先后次序排序的 Hashtable
///
public class Dictionary : Hashtable {
private ArrayList _keys = new ArrayList();
public Dictionary() {
}
///
/// 将键值插入字典
///
///
///
public override void Add( Object key, Object value ) {
base.Add( key, value );
_keys.Add( key );
}
///
/// 设置字典的键值
///
///
///
public void Set( Object key, Object value ) {
base[key] = value;
if (!_keys.Contains( key )) _keys.Add( key );
}
///
/// 清楚所有数据
///
public override void Clear() {
base.Clear();
_keys.Clear();
}
///
/// 获取所有的 key(按照插入次序排序)
///
public override ICollection Keys {
get { return _keys; }
}
///
/// 删除某项
///
///
public override void Remove( Object key ) {
base.Remove( key );
_keys.Remove( key );
}
///
/// 根据 index 获取某项数据
///
///
///
public Object Get( int index ) {
Object key = _keys[index];
return base[key];
}
}
}