You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
119 lines
3.8 KiB
119 lines
3.8 KiB
using System; |
|
using System.Collections.Generic; |
|
using System.ComponentModel; |
|
using System.Drawing; |
|
using System.Data; |
|
using System.Linq; |
|
using System.Text; |
|
using System.Threading.Tasks; |
|
using System.Windows.Forms; |
|
using ESRI.ArcGIS.Geodatabase; |
|
using KGIS.Plugin.LayerProperty.Utils; |
|
|
|
namespace KGIS.Plugin.LayerProperty.View.UC_Controls |
|
{ |
|
public partial class UCFieldsCombox : UserControl |
|
{ |
|
public delegate void SelectedFieldChangedHandler(IField field); |
|
private IFields m_Fields; |
|
private bool m_HaveNone; |
|
private bool m_IsNumberOnly; |
|
private IField selectedField; |
|
public event UCFieldsCombox.SelectedFieldChangedHandler SelectedFieldChanged; |
|
public IField SelectedField |
|
{ |
|
get |
|
{ |
|
return this.selectedField; |
|
} |
|
set |
|
{ |
|
this.selectedField = value; |
|
} |
|
} |
|
public UCFieldsCombox() |
|
{ |
|
InitializeComponent(); |
|
} |
|
public void InitFieldList(IFields fields, string selected) |
|
{ |
|
try |
|
{ |
|
this.m_Fields = fields; |
|
Utils.Util.InitFieldList(ref this.cmbFields, fields, selected); |
|
} |
|
catch (Exception ex) |
|
{ |
|
//RdbUtil.AddException(ex); |
|
} |
|
} |
|
public void InitFieldList(IFields fields, string selected, bool haveNone) |
|
{ |
|
try |
|
{ |
|
this.m_Fields = fields; |
|
this.m_HaveNone = haveNone; |
|
Utils.Util.InitFieldList(ref this.cmbFields, fields, selected, haveNone); |
|
} |
|
catch (Exception ex) |
|
{ |
|
//RdbUtil.AddException(ex); |
|
} |
|
} |
|
public void InitFieldList(IFields fields, string selected, bool haveNone, bool isNumberOnly) |
|
{ |
|
try |
|
{ |
|
this.m_Fields = fields; |
|
this.m_HaveNone = haveNone; |
|
this.m_IsNumberOnly = isNumberOnly; |
|
Utils.Util.InitFieldList(ref this.cmbFields, fields, selected, haveNone, isNumberOnly); |
|
} |
|
catch (Exception ex) |
|
{ |
|
//RdbUtil.AddException(ex); |
|
} |
|
} |
|
public void InitFieldList(IFields fields, string selected, bool haveNone, bool isNumberOnly, bool useAlias) |
|
{ |
|
try |
|
{ |
|
this.m_Fields = fields; |
|
this.m_HaveNone = haveNone; |
|
this.m_IsNumberOnly = isNumberOnly; |
|
this.chkUseAliasName.Checked = useAlias; |
|
Utils.Util.InitFieldList(ref this.cmbFields, fields, selected, haveNone, isNumberOnly, useAlias); |
|
} |
|
catch (Exception ex) |
|
{ |
|
//RdbUtil.AddException(ex); |
|
} |
|
} |
|
private void cmbFields_SelectedIndexChanged(object sender, System.EventArgs e) |
|
{ |
|
try |
|
{ |
|
ItemInfo<IField, string> itemInfo = this.cmbFields.SelectedItem as ItemInfo<IField, string>; |
|
if (itemInfo != null) |
|
{ |
|
if (this.SelectedFieldChanged != null) |
|
{ |
|
this.SelectedFieldChanged(itemInfo.InnerValue); |
|
} |
|
this.selectedField = itemInfo.InnerValue; |
|
} |
|
} |
|
catch (Exception ex) |
|
{ |
|
//RdbUtil.AddException(ex); |
|
} |
|
} |
|
private void chkUseAliasName_CheckedChanged(object sender, System.EventArgs e) |
|
{ |
|
if (this.m_Fields != null) |
|
{ |
|
Utils.Util.InitFieldList(ref this.cmbFields, this.m_Fields, this.cmbFields.Text, this.m_HaveNone, this.m_IsNumberOnly, this.chkUseAliasName.Checked); |
|
} |
|
} |
|
} |
|
}
|
|
|