TX Text Control 邮件合并(十一)CheckBoxs、DropDownLists和DatePickers

发布时间:2012/11/16 00:11 发布者:葡萄城产品团队

返回博客中心

在TX Text Control控件中可以通过ApplicationField类来处理MS Word中的表单域,域的类型、名称和参数都可以非常方便的修改,不过在TX Text Control中不会显示出CheckBox或DropDownList这样的控件。
不过TX Text Control 提供了对这些输入表单域的扩展能力,在TX Text Control的DocumentServer中包含了FieldAdapter类型,通过这些域适配器类型,我们可以非常方便的处理MS Word中的表单域和合并域类型。
在TX Text Control中一个域总显示为一段文本,比如DropDownList域会显示当前选择项的文本,同时TX Text Control也将DropDownList中其它项存储在该域中。用户单击该域时会触发TextFieldClicked事件,此时就可以在该域所在的位置显示一个.NET的标准ComboBox控件。下面的代码演示了如何使用FieldAdapter来修改特定FormDropDownList域的值。

 
FormDropDown fddField = new FormDropDown(ApplicationField);

// create a new System.Windows.Forms.ComboBox and add the
// FormDropDown's items
ComboBox cb = new ComboBox();

cb.Items.AddRange(fddField.ListEntries.ToArray());

Point cbLocation = new Point((fddField.ApplicationField.Bounds.Location.X -
                             textControl1.ScrollLocation.X) / dpiX,
                             (fddField.ApplicationField.Bounds.Location.Y -
                             textControl1.ScrollLocation.Y) / dpiX);

cb.Location = cbLocation;
cb.Tag = fddField;
cb.SelectedText = fddField.ApplicationField.Text;
cb.SelectedIndexChanged += new EventHandler(cb_SelectedIndexChanged);
cb.LostFocus += new EventHandler(cb_LostFocus);
textControl1.Controls.Add(cb);
cb.Focus();
复制代码

下面是程序的运行截图:


源码下载:VS2010 + TX TextControl 17.0

tx_formfield_editor.zip (19.74 K, 下载次数:23)

关于葡萄城

赋能开发者!葡萄城是专业的集开发工具、商业智能解决方案、低代码开发平台于一身的软件和服务提供商,为超过 75% 的全球财富 500 强企业提供服务。葡萄城专注控件软件领域30年,希望通过模块化的开发控件、灵活的低代码应用开发平台等一系列开发工具、解决方案和服务,帮助开发者快速响应复杂多变的业务需求,最大程度地发挥开发者的才智和潜能,让开发者的 IT 人生更从容更美好。

了解详情,请访问葡萄城官网