Wie kann die Spalte des letzten DataGrid den gesamten linken Bereich belegen?

Zuerst! Ich weiß, dass es eine Art scheinen kanndup Trotzdem ist es nicht.

Ich habe ein Raster als Datenvorlage fürDataGrid.RowDetails. Es hat drei Spalten: zwei mitWidth="Auto" und das 3d mitWidth="*"

<DataTemplate x:Key="NotEmptyDistributionsTemplateKey">
    <DataGrid ItemsSource="{Binding SoftwareVersionDistributions}"
        CanUserAddRows="False"
        CanUserDeleteRows="False"
        CanUserReorderColumns="False"
        CanUserResizeColumns="True"
        CanUserSortColumns="False"
        IsReadOnly="True"
        CanUserResizeRows="False"
        AutoGenerateColumns="False"
        RowHeaderWidth="0"
        Margin="20,5"
        HorizontalAlignment="Stretch">
        <DataGrid.Columns>
            <DataGridTextColumn 
                Header="Architecture" 
                Binding="{Binding SoftwareArchitecture.Name, TargetNullValue=Все, FallbackValue=Все}"
                Width="Auto"/>
            <DataGridTextColumn 
                Header="Language" 
                Binding="{Binding SysCodepage.Title, TargetNullValue=Все, FallbackValue=Все}" 
                Width="Auto"/>
            <DataGridHyperlinkColumn 
                Header="Link" 
                Binding="{Binding DownloadLink}"
                Width="*" 
                CanUserResize="False"/>
        </DataGrid.Columns>
    </DataGrid>
</DataTemplate>

Diese Vorlage zeigt genau 3 Spalten, wenn das Raster in einer Zelle verschachtelt ist. Aber wenn es als verwendet wirdRowDetaislTemplate 4. leere Spalte erscheint. Das macht mich wütend.

Hat jemand eine Idee, warum das passieren kann?

Update 1. Wie es aussieht:

Update 2.

Endlich habe ich die Lösung gefunden. Gerade hinzugefügtScrollViewer.HorizontalScrollBarVisibility="Disabled"

Jetzt ist es ok:

Aber ich kann dieses merkwürdige Verhalten nicht verstehen.

Update 3 (Kann jemandem helfen)

Kürzlich haben wir einen Fehler gefunden, den unsere Benutzer hatten und die Entwickler nicht. Der Fehler betraf erneut die Breite und Ausrichtung von DataGrid. Nun, vielleicht war das nicht wirklich ein Fehler, aber wir hatten ein anderes Verhalten der Steuerung.
Die Untersuchung ergab, dass bei der Installation von .net Framework 4.5 das Installationsprogramm auch .net Framework 4.0 aktualisiert hat. Dieses Update hat das Verhalten von DataGrid irgendwie geändert. (zum erwarteten)
Wir haben unsere Benutzer gebeten, Framework 4.5 zu installieren, und das Problem ist verschwunden. Obwohl unsere App immer noch auf .net 4.0 abzielt

Antworten auf die Frage(1)

Ihre Antwort auf die Frage