Getting the ComboBox to show a blank value


Author
Message
Trent Taylor
Trent Taylor
StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 7K
I will have to setup this scenario and test it.  I will let you know when I know something. Wink
Andria Jensen
Andria Jensen
Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)
Group: Forum Members
Posts: 336, Visits: 497
Oh, and RateCode is an nvarchar of length 1 and the blank values are actually empty strings("") and not NULL values.  Rule1Code, Rule2Code, etc. are set up the same way in the other table which the BO is mapped to.
Andria Jensen
Andria Jensen
Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)
Group: Forum Members
Posts: 336, Visits: 497
I think maybe I need to explain further and you can tell me if I'm doing this the wrong way.  I have a BusinessObject with fields called Rule1Code, Rule2Code, Rule3Code, etc.  Each of these has a combo box which is populated by a SQL Select from a different table than the BO looks at, and its field is RateCode.  Each of the combo boxes are then bound to the BO and the BindingField set to Rule1Code, Rule2Code, etc.  Could any of this be part of my problem and is there a better way to do this?
Trent Taylor
Trent Taylor
StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 7K
Is there padding your the field RateCode?  If it is a Char field, this may be your problem as the value is an empty string.  You might check to see if the data behind the "blank" field is a zero length string.
Andria Jensen
Andria Jensen
Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)
Group: Forum Members
Posts: 336, Visits: 497
I am setting the DisplayValue and ValueMember at runtime to "RateCode".  The binding seems to be working fine, as it will select the value if it is not blank.  It's just getting it to show a blank in the combo when blank is in the selected record that is the problem.
Trent Taylor
Trent Taylor
StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 7K

With Me.cboRule1Code
 
.DataSource = DebRateCodeBO.GetDataTable(ComboSource)
  .TopMostItem.TopMostDescription =
"<none>"
 
.TopMostItem.TopMostValue = ""
 
.Refresh()
End With

Are you ever setting the DisplayMember and the ValueMember properties of the combo box?  This is how the combo knows how to bind to data assuming that your BindingProperty is set to SelectedValue.  For example:

With Me.cboRule1Code
  .DisplayMember = "RateCode"
  .ValueMember = "RateCode"
 
.DataSource = DebRateCodeBO.GetDataTable(ComboSource)
  .TopMostItem.TopMostDescription =
"<none>"
 
.TopMostItem.TopMostValue = ""
 
.Refresh()
End With

Andria Jensen
Andria Jensen
Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)
Group: Forum Members
Posts: 336, Visits: 497
I have a data field called RateCode and it is a string.
Trent Taylor
Trent Taylor
StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 7K
What is your binding field and what data type is it?
Andria Jensen
Andria Jensen
Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)Advanced StrataFrame User (600 reputation)
Group: Forum Members
Posts: 336, Visits: 497
I put a TopMostItem property in and am now using the following code:

With Me.cboRule1Code
 
.DataSource = DebRateCodeBO.GetDataTable(ComboSource)
  .TopMostItem.TopMostDescription =
"<none>"
 
.TopMostItem.TopMostValue = ""
 
.Refresh()
End With

I am still getting the same results as before.  I see no "<none>" value in the dropdown.  Is there something else I need to do to make this work?  Or is something possibly overriding this?

 


Trent Taylor
Trent Taylor
StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 7K
Are you using a TopMostItem in the combo box?  You should use a TopMostItem and set the value property to represent the "blank" record.  This will allow the binding to work properly and set the combo back to an empty value.  You can also set the SelectedValue property of the combo manually to the "blank" value which will reset the list as well.
GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Similar Topics

Reading This Topic

Login

Explore
Messages
Mentions
Search