i've extended autocompletebox of silverlight , overridden ondropdownclosed event handler. works expected except component looses focus browser once dropdown closed.
what have change in order keep it?
here's code:
namespace itpole.sphere.application.core.controls { using system.windows; using system.windows.controls; using system.windows.media; public class customcompletebox : autocompletebox { public static readonly dependencyproperty selectedatcloseproperty = dependencyproperty.register( "selectedatclose", typeof(object), typeof(customcompletebox), new propertymetadata(null)); public object selectedatclose { { return this.getvalue(selectedatcloseproperty); } set { this.setvalue(selectedatcloseproperty, value); } } protected override void ondropdownclosed(routedpropertychangedeventargs<bool> e) { base.ondropdownclosed(e); this.selectedatclose = this.selecteditem; } protected override void ontextchanged(routedeventargs e) { base.ontextchanged(e); if (string.isnullorempty(this.text)) { this.setvalue(selectedatcloseproperty, null); } } } }
and usage in xaml:
<controls1:customcompletebox x:name="portfolioautocompletebox" grid.column="1" grid.columnspan="2" grid.row="1" margin="2" datacontext="{binding portfolio}" style="{staticresource defaultautocompleteboxstyle}" itemtemplate="{staticresource descriptionitemtemplate}" valuememberbinding="{binding description, mode=twoway}" selectedatclose="{binding value, validatesondataerrors=true, mode=twoway}" itemssource="{binding values}" text="{binding text, mode=twoway}" behaviors:autocompleteboxbehaviors.populatingcommand="{binding populationcommand}" />
what version of silverlight using? works me v4.
Comments
Post a Comment