本文整理汇总了C#中FormInfo.GetFields方法的典型用法代码示例。如果您正苦于以下问题:C# FormInfo.GetFields方法的具体用法?C# FormInfo.GetFields怎么用?C# FormInfo.GetFields使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FormInfo
的用法示例。
在下文中一共展示了FormInfo.GetFields方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetPrimaryColumn
/// <summary>
/// Returns name of the primary key column.
/// </summary>
/// <param name="fi">Form info</param>
/// <param name="bizFormName">Bizform code name</param>
private static string GetPrimaryColumn(FormInfo fi, string bizFormName)
{
string result = null;
if ((fi != null) && (!string.IsNullOrEmpty(bizFormName)))
{
// Seek primary key column in all fields
var query = from field in fi.GetFields(true, true)
where field.PrimaryKey == true
select field.Name;
// Try to get field with the name 'bizformnameID'
result = query.FirstOrDefault(x => x.ToLowerCSafe() == (bizFormName + "ID").ToLowerCSafe());
if (String.IsNullOrEmpty(result))
{
result = query.FirstOrDefault();
}
}
return result;
}
示例2: InitUIContext
/// <summary>
/// Initializes UI context.
/// </summary>
private void InitUIContext(FormInfo formInfo)
{
if (formInfo != null)
{
ArrayList result = new ArrayList();
// Get all fields except the system ones
var fields = formInfo.GetFields(true, true);
foreach (FormFieldInfo field in fields)
{
string caption = field.Caption;
if (String.IsNullOrEmpty(caption))
{
caption = field.Name;
}
if (fields.Any(f => (f.Name != field.Name) && (f.Caption == caption)))
{
// Add field name if more fields have similar caption
caption += String.Format(" [{0}]", field.Name);
}
result.Add(String.Format("{0};{1}", field.Guid, caption));
}
UIContext["CurrentFormFields"] = result;
ViewState["CurrentFormFields"] = result;
}
}
示例3: FillFieldsList
/// <summary>
/// Fills list of available fields.
/// </summary>
protected void FillFieldsList()
{
FormInfo fi = null;
FormFieldInfo[] visibleFields = null;
DataClassInfo dci = DataClassInfoProvider.GetDataClass(DataClassID);
if (dci != null)
{
// Load form definition
string formDefinition = dci.ClassFormDefinition;
if (IsAlternative)
{
// Get alternative form definition and merge if with the original one
AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(ObjectID);
if (afi.FormCoupledClassID > 0)
{
// If coupled class is defined combine form definitions
DataClassInfo coupledDci = DataClassInfoProvider.GetDataClass(afi.FormCoupledClassID);
if (coupledDci != null)
{
formDefinition = FormHelper.MergeFormDefinitions(formDefinition, coupledDci.ClassFormDefinition, true);
}
}
// Merge class and alternative form definitions
formDefinition = FormHelper.MergeFormDefinitions(formDefinition, afi.FormDefinition);
}
fi = new FormInfo(formDefinition);
// Get visible fields
visibleFields = fi.GetFields(true, false);
lstAvailableFields.Items.Clear();
if (FormType == FORMTYPE_DOCUMENT)
{
if (dci.ClassNodeNameSource == "") //if node name source is not set
{
lstAvailableFields.Items.Add(new ListItem(GetString("DocumentType_Edit_Form.DocumentName"), "DocumentName"));
}
}
if (visibleFields != null)
{
// Add public visible fields to the list
foreach (FormFieldInfo ffi in visibleFields)
{
lstAvailableFields.Items.Add(new ListItem(ffi.Name, ffi.Name));
}
}
if (FormType == FORMTYPE_DOCUMENT)
{
if (dci.ClassUsePublishFromTo)
{
lstAvailableFields.Items.Add(new ListItem(GetString("DocumentType_Edit_Form.DocumentPublishFrom"), "DocumentPublishFrom"));
lstAvailableFields.Items.Add(new ListItem(GetString("DocumentType_Edit_Form.DocumentPublishTo"), "DocumentPublishTo"));
}
}
lstAvailableFields.SelectedIndex = 0;
}
}
示例4: FillFieldsList
/// <summary>
/// Fills field list with available fields.
/// </summary>
protected void FillFieldsList()
{
drpAvailableFields.Items.Clear();
DataClassInfo dci = DataClassInfoProvider.GetDataClassInfo(DataClassID);
if (dci != null)
{
// Load form definition
string formDefinition = dci.ClassFormDefinition;
if (IsAlternative)
{
// Get alternative form definition and merge if with the original one
AlternativeFormInfo afi = AlternativeFormInfoProvider.GetAlternativeFormInfo(ObjectID);
if (afi.FormCoupledClassID > 0)
{
// If coupled class is defined combine form definitions
DataClassInfo coupledDci = DataClassInfoProvider.GetDataClassInfo(afi.FormCoupledClassID);
if (coupledDci != null)
{
formDefinition = FormHelper.MergeFormDefinitions(formDefinition, coupledDci.ClassFormDefinition);
}
}
// Merge class and alternative form definitions
formDefinition = FormHelper.MergeFormDefinitions(formDefinition, afi.FormDefinition);
}
FormInfo fi = new FormInfo(formDefinition);
// Get visible fields
var visibleFields = fi.GetFields(true, false);
drpAvailableFields.Items.Clear();
// Prepare arrays for JavaScript functions
string script = "var formControlName = new Array(); var formControlCssClass = new Array();\n";
if (FormLayoutType == FormLayoutTypeEnum.Document)
{
if (string.IsNullOrEmpty(dci.ClassNodeNameSource)) //if node name source is not set
{
string docName = "DocumentName";
drpAvailableFields.Items.Add(new ListItem(GetString("DocumentType_Edit_Form.DocumentName"), docName));
// Add document name field form control to the script
script += String.Format("formControlName['{0}'] = '{1}';\n", docName, "TextBoxControl");
script += String.Format("formControlCssClass['{0}'] = '';\n", docName);
}
}
if (visibleFields != null)
{
// Add public visible fields to the list
foreach (FormFieldInfo ffi in visibleFields)
{
drpAvailableFields.Items.Add(new ListItem(ffi.GetDisplayName(MacroResolver.GetInstance()), ffi.Name));
// Add fields' form controls to the script
script += String.Format("formControlName['{0}'] = '{1}';\n", ffi.Name, ffi.Settings["controlname"]);
script += String.Format("formControlCssClass['{0}'] = '{1}';\n", ffi.Name, ffi.GetPropertyValue(FormFieldPropertyEnum.ControlCssClass));
}
}
if (FormLayoutType == FormLayoutTypeEnum.Document)
{
if (dci.ClassUsePublishFromTo)
{
// Add publish from/to fields if they are not already in predefined fields
if (drpAvailableFields.Items.FindByValue("DocumentPublishFrom", true) == null)
{
string publishFrom = "DocumentPublishFrom";
drpAvailableFields.Items.Add(new ListItem(GetString("DocumentType_Edit_Form.DocumentPublishFrom"), publishFrom));
// Add Publish From field form control to the script
script += String.Format("formControlName['{0}'] = '{1}';\n", publishFrom, "CalendarControl");
script += String.Format("formControlCssClass['{0}'] = '';\n", publishFrom);
}
if (drpAvailableFields.Items.FindByValue("DocumentPublishTo", true) == null)
{
string publishTo = "DocumentPublishTo";
drpAvailableFields.Items.Add(new ListItem(GetString("DocumentType_Edit_Form.DocumentPublishTo"), publishTo));
// Add Publish To field form control to the script
script += String.Format("formControlName['{0}'] = '{1}';\n", publishTo, "CalendarControl");
script += String.Format("formControlCssClass['{0}'] = '';\n", publishTo);
}
}
}
// Set script - it is registered on pre-render
FormControlScript = script;
}
}
示例5: InitializeControls
/// <summary>
/// Initializes controls on the page.
/// </summary>
protected void InitializeControls()
{
DataClassInfo classInfo = DataClassInfoProvider.GetDataClassInfo(ClassName);
if (classInfo == null)
{
return;
}
// Set class names
fldAddress1.ClassName = ClassName;
fldAddress2.ClassName = ClassName;
fldBirthday.ClassName = ClassName;
fldBusinessPhone.ClassName = ClassName;
fldCity.ClassName = ClassName;
fldCompanyName.ClassName = ClassName;
fldCountry.ClassName = ClassName;
fldEmail.ClassName = ClassName;
fldFirstName.ClassName = ClassName;
fldGender.ClassName = ClassName;
fldHomePhone.ClassName = ClassName;
fldJobTitle.ClassName = ClassName;
fldLastName.ClassName = ClassName;
fldMiddleName.ClassName = ClassName;
fldMobilePhone.ClassName = ClassName;
fldSalutation.ClassName = ClassName;
fldState.ClassName = ClassName;
fldTitleAfter.ClassName = ClassName;
fldTitleBefore.ClassName = ClassName;
fldURL.ClassName = ClassName;
fldZip.ClassName = ClassName;
if (!string.IsNullOrEmpty(classInfo.ClassContactMapping))
{
// Prepare form info based on mapping data
FormInfo mapInfo = new FormInfo(classInfo.ClassContactMapping);
if (mapInfo.ItemsList.Count > 0)
{
FormEngineUserControl customControl = null;
// Get all mapped fields
var fields = mapInfo.GetFields(true, true);
// Name property contains a column of contact object
// and MappedToField property contains form field mapped to the contact column
foreach (FormFieldInfo ffi in fields)
{
// Set mapping values...
switch (ffi.Name.ToLowerCSafe())
{
case "contactaddress1":
// ... Address1
fldAddress1.Value = ffi.MappedToField;
break;
case "contactaddress2":
// ... Address2
fldAddress2.Value = ffi.MappedToField;
break;
case "contactbirthday":
// ... birthday
fldBirthday.Value = ffi.MappedToField;
break;
case "contactbusinessphone":
// ... business phone
fldBusinessPhone.Value = ffi.MappedToField;
break;
case "contactcity":
// ... city
fldCity.Value = ffi.MappedToField;
break;
case "contactcountryid":
// ... country
fldCountry.Value = ffi.MappedToField;
break;
case "contactcompanyname":
// ... company name
fldCompanyName.Value = ffi.MappedToField;
break;
case "contactemail":
// ... email
fldEmail.Value = ffi.MappedToField;
break;
case "contactfirstname":
// ... first name
fldFirstName.Value = ffi.MappedToField;
break;
case "contactgender":
// ... gender
fldGender.Value = ffi.MappedToField;
break;
case "contacthomephone":
// ... home phone
fldHomePhone.Value = ffi.MappedToField;
break;
case "contactjobtitle":
// ... job title
fldJobTitle.Value = ffi.MappedToField;
break;
case "contactlastname":
//.........这里部分代码省略.........
开发者ID:arvind-web-developer,项目名称:csharp-projects-Jemena-Kentico-CMS,代码行数:101,代码来源:MappingDialog.ascx.cs
示例6: GetPrimaryColumn
/// <summary>
/// Returns name of the primary key column.
/// </summary>
/// <param name="fi">Form info</param>
/// <param name="bizFormName">Bizform code name</param>
private static string GetPrimaryColumn(FormInfo fi, string bizFormName)
{
string result = null;
if ((fi != null) && (!string.IsNullOrEmpty(bizFormName)))
{
// Try to get field with the name 'bizformnameID'
FormFieldInfo ffi = fi.GetFormField(bizFormName + "ID");
if ((ffi != null) && ffi.PrimaryKey)
{
result = ffi.Name;
}
else
{
// Seek primary key column in all fields
FormFieldInfo[] fields = fi.GetFields(true, true);
foreach (FormFieldInfo field in fields)
{
if (field.PrimaryKey)
{
result = field.Name;
break;
}
}
}
}
return result;
}
示例7: AddExtraFields
/// <summary>
/// Adds the extra activity fields to the form
/// </summary>
/// <param name="ignoredColumns">Ignored columns</param>
/// <param name="fi">Form info with the result</param>
/// <param name="additionalFieldsForm">Extra fields</param>
private static void AddExtraFields(string ignoredColumns, FormInfo fi, FormInfo additionalFieldsForm)
{
if (additionalFieldsForm != null)
{
// Additional fields
var formFields = additionalFieldsForm.GetFields(true, false);
foreach (FormFieldInfo ffi in formFields)
{
if (ignoredColumns.IndexOf("|" + ffi.Name.ToLower() + "|") >= 0)
{
continue;
}
ffi.Settings["controlname"] = "textfilter";
fi.AddFormField(ffi);
}
}
}
示例8: UseBindingTemplates
private static bool UseBindingTemplates(DataClassInfo dc)
{
// Use binding generator when there are exactly two binding references in the object
int bindingReferences = 0;
FormInfo fi = new FormInfo(dc.ClassFormDefinition);
foreach (var field in fi.GetFields<FormFieldInfo>())
{
if (!string.IsNullOrEmpty(field.ReferenceToObjectType) && (field.ReferenceType == ObjectDependencyEnum.Binding))
{
bindingReferences++;
}
}
return bindingReferences == 2;
}
示例9: OnPreRender
protected override void OnPreRender(EventArgs e)
{
string reportName = ValidationHelper.GetString(usReports.Value, String.Empty);
mReportInfo = ReportInfoProvider.GetReportInfo(reportName);
if (mReportInfo != null)
{
ReportID = mReportInfo.ReportID;
usItems.Enabled = true;
// Test if there is any item visible in report parameters
FormInfo fi = new FormInfo(mReportInfo.ReportParameters);
// Hide if there are no visible parameters
pnlParametersButtons.Visible = fi.GetFields(true, false).Any();
}
else
{
if (ReportID == 0)
{
pnlParametersButtons.Visible = false;
usItems.Enabled = false;
}
}
ScriptHelper.RegisterClientScriptBlock(this, typeof(String), "ReportItemSelector_Refresh", "function refresh () {" + ControlsHelper.GetPostBackEventReference(pnlUpdate, String.Empty) + "}", true);
if (!mDisplay)
{
pnlReports.Visible = false;
pnlParametersButtons.Visible = false;
usItems.Enabled = true;
}
if (!ShowItemSelector)
{
pnlItems.Visible = false;
}
BuildConditions();
if (mReportInfo == null)
{
usItems.SpecialFields.Add(new SpecialField { Text = "(" + mFirstItemText + ")", Value = "0" });
}
if (ShowItemSelector)
{
ReloadItems();
}
var currentGuid = CurrentGuid();
if (mSetValues)
{
WindowHelper.Add(currentGuid, CurrentDataSet);
ScriptHelper.RegisterDialogScript(Page);
ScriptHelper.RegisterStartupScript(Page, typeof(Page), "OpenModalWindowReportItem", ScriptHelper.GetScript("modalDialog('" + ResolveUrl("~/CMSModules/Reporting/Dialogs/ReportParametersSelector.aspx?ReportID=" + ReportID + "&guid=" + currentGuid) + "','ReportParametersDialog', 700, 500);"));
mKeepDataInWindowsHelper = true;
}
// Apply reportid condition if report was selected via uniselector
if (mReportInfo != null)
{
DataSet ds = CurrentDataSet;
ViewState["ParametersXmlData"] = null;
ViewState["ParametersXmlSchema"] = null;
if (!DataHelper.DataSourceIsEmpty(ds))
{
ViewState["ParametersXmlData"] = ds.GetXml();
ViewState["ParametersXmlSchema"] = ds.GetXmlSchema();
}
if (!mKeepDataInWindowsHelper)
{
WindowHelper.Remove(currentGuid);
}
if (!DataHelper.DataSourceIsEmpty(ds))
{
ds = DataHelper.DataSetPivot(ds, new [] { "ParameterName", "ParameterValue" });
ugParameters.DataSource = ds;
ugParameters.ReloadData();
pnlParameters.Visible = true;
}
else
{
pnlParameters.Visible = false;
}
}
else
{
pnlParameters.Visible = false;
}
if (pnlParameters.Visible || pnlParametersButtons.Visible)
{
pnlItems.AddCssClass("form-group");
//.........这里部分代码省略.........
示例10: AddExtraActivityFields
/// <summary>
/// Adds the extra activity fields to the rule settings form.
/// </summary>
/// <param name="ignoredColumns">Collection of columns, which shouldn't be added</param>
/// <param name="fi">Form info used for adding extra fields</param>
/// <param name="additionalFieldsForm">Collection of extra fields</param>
private static void AddExtraActivityFields(IEnumerable<string> ignoredColumns, FormInfo fi, FormInfo additionalFieldsForm)
{
if (additionalFieldsForm != null)
{
IEnumerable<FormFieldInfo> formFields = additionalFieldsForm.GetFields(true, false)
.Where(f =>
!ignoredColumns.Contains(f.Name.ToLowerCSafe())
);
foreach (FormFieldInfo ffi in formFields)
{
ffi.Settings["controlname"] = GetControlNameForFieldDataType(ffi);
fi.AddFormItem(ffi);
}
}
}