﻿<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>StrataFrame Forum » StrataFrame Application Framework - V1 » Business Objects and Data Access (How do I?)  » Clearing textbox on add when bindings set dynamically</title><generator>InstantForum 2017-1 Final</generator><description>StrataFrame Forum</description><link>http://forum.strataframe.net/</link><webMaster>StrataFrame Forum</webMaster><lastBuildDate>Tue, 09 Jun 2026 01:38:28 GMT</lastBuildDate><ttl>20</ttl><item><title>Clearing textbox on add when bindings set dynamically</title><link>http://forum.strataframe.net/FindPost27733.aspx</link><description>I have a form that serves as a single maintenance form for many very simple BO's. The user selects the table they want to maintain and the control bindings are created, all works fine but the textboxes would NOT clear upon a call to the forms add method. Eveything else worked fine. I added an event handler to manually clear it but I am wondering why I had to do that and if anything is "wrong" since it didnt work as expected. Any ideas?&lt;/P&gt;&lt;P&gt;Binding Code Snippet:&lt;/P&gt;&lt;FONT size=2&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Dim&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; strBOname &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;String&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; = cboTables.SelectedValue&lt;/P&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Dim&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; typeRef &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; Type&lt;/P&gt;&lt;P&gt;typeRef = MicroFour.StrataFrame.Tools.Common.GetTypeFromReferencedAssemblies(strBOname)&lt;/P&gt;&lt;P&gt;boMaintenance = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;CType&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;(Activator.CreateInstance(typeRef), BusinessLayer)&lt;/P&gt;&lt;P&gt;boMaintenance.ParentContainer = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;P&gt;boMaintenance.SynchronizingObject = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;.BusinessObjects.Add(boMaintenance)&lt;/P&gt;&lt;P&gt;txtValue.BusinessObject = boMaintenance&lt;/P&gt;&lt;P&gt;txtValue.BindingField = boMaintenance.AllFieldsList.Find(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;AddressOf&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; findBindingValue)&lt;/P&gt;&lt;P&gt;txtValue.Refresh()&lt;/P&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Dim&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; boCastToParent &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;As&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Object&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;P&gt;boCastToParent = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;CType&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;(boMaintenance, RTIC.BUSINESS.SQLBASEBO)&lt;/P&gt;&lt;P&gt;boCastToParent.FillByTableName(cboTables.Text)&lt;/P&gt;&lt;P&gt;boMaintenance.CopyDataFrom(boCastToParent, BusinessCloneDataType.ClearAndFillFromDefaultView)&lt;/P&gt;&lt;P&gt;boMaintenance.Filter = boMaintenance.AllFieldsList.Find(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;AddressOf&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; findPKField) &amp;amp; &lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;&lt;FONT color=#a31515 size=2&gt;" &amp;gt;= 10"&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;P&gt;boMaintenance.SetDirtyOnEdit = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;True&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;.PrimaryBusinessObject = boMaintenance&lt;/P&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;For&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Each&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; Control &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;In&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;.pnlAllControls.Controls&lt;/P&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;If&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;TypeOf&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; (Control) &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Is&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; UI.SDSI_cmdDataButton &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Then&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;CType&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;(Control, UI.SDSI_cmdDataButton).BusinessObject = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;.PrimaryBusinessObject&lt;/P&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;End&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;If&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Next&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;P&gt;boMaintenance.Navigate(BusinessNavigationDirection.First)&lt;/P&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;.pnlAllControls.Visible = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;True&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;P&gt;updateButtonState()&lt;/P&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;.cboTables.Visible = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;False&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;.lblSelection.Visible = &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;False&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;.RefreshBusinessObjects()&lt;/P&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Me&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;.Refresh()&lt;/P&gt;&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;AddHandler&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; boMaintenance.EditingStateChanged, &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;AddressOf&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; ClearTextBox&lt;/P&gt;&lt;/FONT&gt;</description><pubDate>Tue, 27 Jul 2010 13:58:14 GMT</pubDate><dc:creator>Keith Chisarik</dc:creator></item><item><title>RE: Clearing textbox on add when bindings set dynamically</title><link>http://forum.strataframe.net/FindPost27749.aspx</link><description>Ill check out that collection. The example does a text box (txtValue), I cut out other code for readability that does much of the same.</description><pubDate>Tue, 27 Jul 2010 13:58:14 GMT</pubDate><dc:creator>Keith Chisarik</dc:creator></item><item><title>RE: Clearing textbox on add when bindings set dynamically</title><link>http://forum.strataframe.net/FindPost27748.aspx</link><description>The refreshing of controls works on a list of bound controls for a BO, accessed via the BoundControls property. This should be set when you set the BusinessObject property of a control that implements IBusinessBindable (if it was implemented correctly). This is what is happening with a normal SF textbox.  The first thing I'd check, via a break point, is if the controls are in fact getting added to the BoundControls list, and I'd check that the list isn't some getting cleared before you use it. &lt;br&gt;
&lt;br&gt;
As I look at your code, I'm wondering if you are setting up all the controls you need to. It appears that you are only setting up controls that are SDSI_cmdDataButton types. Does this type include controls you might need like textboxes and combos (two very common bound controls)? You need to set the BusinessObject property of the control to get it added to the BoundControls collection.</description><pubDate>Tue, 27 Jul 2010 13:56:09 GMT</pubDate><dc:creator>Greg McGuffey</dc:creator></item></channel></rss>