Привязка к ViewportWidth ListView

Я использую IMultiValueConverter для привязки Width столбца ListView, чтобы он заполнил все оставшееся пространство.

Я привязываюсь к ListView ActualWidth, и, таким образом, это также включает ширину, занимаемую вертикальной полосой прокрутки (для которой Visibility установлено на Auto).

Я хочу получить ширину ListView ViewPort (т.е. ширину ListView минус ширина вертикальной полосы прокрутки).

Я пробовал привязку, как это было предложено в этот другой ТАК вопрос, но я всегда получаю {DependencyProperty.UnsetValue}.

</GridViewColumn.Width>
     <MultiBinding Converter="{StaticResource widthConverter}">
          <Binding ElementName="lstResults" Path="ActualWidth" NotifyOnSourceUpdated="True" />
          <Binding ElementName="colPartNo" Path="ActualWidth" NotifyOnSourceUpdated="True" />
          <Binding RelativeSource="{RelativeSource Mode=FindAncestor, AncestorType=ScrollViewer}" Path="ViewportWidth" NotifyOnSourceUpdated="True"/>
     </MultiBinding>
</GridViewColumn.Width>

Столбец, размер которого необходимо изменить, находится в GridView, содержащемся в ListView.View.

Заранее спасибо за помощь.


person Rachel    schedule 24.10.2012    source источник