legalvaluesfielddefinition.cs
来自「EpiInfo 开源的导航系统远程序,不知道在哪里下的了,分享一下,有兴趣的」· CS 代码 · 共 133 行
CS
133 行
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Epi.Fields;
namespace Epi.Windows.MakeView.Dialogs.FieldDefinitionDialogs
{
/// <summary>
/// Field definition dialog for legal values
/// </summary>
public partial class LegalValuesFieldDefinition : Epi.Windows.MakeView.Dialogs.FieldDefinitionDialogs.TextFieldDefinition
{
private DDLFieldOfLegalValues field;
private string sourceTableName;
private string textColumnName;
/// <summary>
/// Default Constsructor, for exclusive use by the designer.
/// </summary>
public LegalValuesFieldDefinition()
{
InitializeComponent();
}
/// <summary>
/// Constructor for Legal Values Field Definition
/// </summary>
/// <param name="frm">The main form</param>
public LegalValuesFieldDefinition(MainForm frm) : base(frm)
{
InitializeComponent();
}
/// <summary>
/// Constructor for Legal Values Field Definition
/// </summary>
/// <param name="frm">The main form</param>
/// <param name="page">The page</param>
public LegalValuesFieldDefinition(MainForm frm, Page page) : base(frm)
{
InitializeComponent();
this.mode = FormMode.Create;
this.page = page;
}
/// <summary>
/// Constructor for the Legal Values Field Definition dialog
/// </summary>
/// <param name="frm">The main form</param>
/// <param name="field">The legal values field</param>
public LegalValuesFieldDefinition(MainForm frm, DDLFieldOfLegalValues field) : base(frm)
{
InitializeComponent();
this.mode = FormMode.Edit;
this.field = field;
this.page = field.Page;
LoadFormData();
}
private void LoadFormData()
{
txtPrompt.Text = field.PromptText;
txtFieldName.Text = field.Name;
if (!string.IsNullOrEmpty(field.SourceTableName))
{
this.sourceTableName = field.SourceTableName;
this.textColumnName = field.TextColumnName;
txtDataSource.Text = field.SourceTableName + " :: " + field.TextColumnName;
}
chkReadOnly.Checked = field.IsReadOnly;
chkRepeatLast.Checked = field.ShouldRepeatLast;
chkRequired.Checked = field.IsRequired;
promptFont = field.PromptFont;
controlFont = field.ControlFont;
}
/// <summary>
/// Sets the field's properties based on GUI values
/// </summary>
protected override void SetFieldProperties()
{
field.Name = txtFieldName.Text;
field.PromptText = txtPrompt.Text;
if (promptFont != null)
{
field.PromptFont = promptFont;
}
if (controlFont != null)
{
field.ControlFont = controlFont;
}
field.IsRequired = chkRequired.Checked;
field.IsReadOnly = chkReadOnly.Checked;
field.ShouldRepeatLast = chkRepeatLast.Checked;
if (!string.IsNullOrEmpty(this.sourceTableName) && !string.IsNullOrEmpty(this.textColumnName))
{
field.SourceTableName = this.sourceTableName;
field.TextColumnName = this.textColumnName;
}
}
/// <summary>
/// Gets the field defined by this field definition dialog
/// </summary>
public override RenderableField Field
{
get
{
return field;
}
}
private void btnDataSource_Click(object sender, EventArgs e)
{
DataSourceSelector selector = new DataSourceSelector(field, txtFieldName.Text);
DialogResult result = selector.ShowDialog();
if (result == DialogResult.OK)
{
txtDataSource.Text = selector.TableName + " :: " + selector.ColumnName;
this.sourceTableName = selector.TableName;
this.textColumnName = selector.ColumnName;
}
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?