c# - WPF how to make Grid Reevaluate Max Widths on GridSplitter Column Resize? -


so have grid bunch of column definitions. initial column width property initialized settings of app, works correctly, try make max size columns user cannot resize screen things don't appear correctly.

the multibinding used calculate max width seems working properly. however, issue have multibinding not recalculate value of maxwidth when gridsplitter changes values of actual width. have breakpoint set inside converter not hit.

however, don't see how can be, because according gridsplitter's documentation:

http://msdn.microsoft.com/en-us/library/system.windows.controls.gridsplitter%28v=vs.110%29.aspx

resizing gridsplitter should change actualwidth of columndefinition.

if case, expect multibinding update. however, i'm not seeing this.

  <grid.columndefinitions>   <columndefinition        x:name="namelistviewcolumn"       minwidth="100"       width="{binding namelistviewwidth, source={x:static daedalusgraphviewer:settingsmanager.appsettings}, mode=onetime,                       converter={staticresource gridlengthconverter}}"                     >     <columndefinition.maxwidth>       <multibinding converter="{staticresource signalnamecolumnmaxsizeconverter}">         <binding path="actualwidth"                   elementname="namelistviewcolumn"                  />         <binding path="actualwidth"                   elementname="signalvalueslistviewcolumn"                  />        <binding path="actualwidth"                  elementname="signaltreeviewcolumn"                 />          <binding elementname="signalvalueslistviewcolumn" path="minwidth" />         <binding elementname="signaltreeviewcolumn" path="minwidth" />        </multibinding>     </columndefinition.maxwidth>    </columndefinition>     <columndefinition width="auto" x:name="signalnamesgridspitter"/>   <columndefinition        minwidth="100"       x:name="signalvalueslistviewcolumn"       width="{binding signalvalueslistviewwidth, source={x:static daedalusgraphviewer:settingsmanager.appsettings},                        mode=onetime, converter={staticresource gridlengthconverter}}"       >     <columndefinition.maxwidth>       <multibinding converter="{staticresource signalvaluesmaxsizeconverter}">         <binding path="actualwidth"                   elementname="signalvalueslistviewcolumn"                  />         <binding path="actualwidth"                   elementname="signaltreeviewcolumn"                  />           <binding elementname="signaltreeviewcolumn" path="minwidth" />        </multibinding>     </columndefinition.maxwidth>   </columndefinition>     <columndefinition x:name="signalvaluesgridsplitter" width="auto"/>     <columndefinition        x:name="signaltreeviewcolumn"       minwidth="100"       width="*"       />     <columndefinition width="18" minwidth="18" x:name="verticalscrollbarcolumn"/>   </grid.columndefinitions> 

found answer here: actual width property doesn't implement inotifypropertychanged.

binding columndefinition.actualwidth returns 0


Comments

Popular posts from this blog

get url and add instance to a model with prefilled foreign key :django admin -

android - Keyboard hides my half of edit-text and button below it even in scroll view -

css - Make div keyboard-scrollable in jQuery Mobile? -