G'day,Ändern der Größe ein Rastersteuer programmatisch über einen Zeitraum von Zeit
Ich bin versucht, die alten XBox 360 GUI mit der Schiebe Tabs zu simulieren (Denken Sie daran, Sie links drücken würden oder rechts und der Inhalt würde gleiten in Abhängigkeit von der Registerkarte?) Anyways, im Moment habe ich das funktioniert gut, aber ich kann nicht die "Animation" funktioniert.
Wenn der Benutzer linken Pfeil oder rechten Pfeil drückt, wird meine OpenWindow (int iIndex) -Methode aufgerufen, wobei iIndex der Index zum nächsten oder vorherigen "Fenster" ist, das eingefügt werden soll. (Kein Fenster ... Jedes "Window" ist eine Struktur mit einem übergeordneten Grid-Steuerelement, das eine Schaltfläche und ein kleineres Grid-Steuerelement enthält, das den Windows-Inhalt enthält.)
Jetzt liegt mein Problem in der Größenanpassung des übergeordneten Grid-Steuerelements. Wenn es eingefügt wird, wird die Größe geändert, indem mygrid.Width + = 1 aufgerufen wird. Das funktioniert, aber ich sehe es nicht über einen bestimmten Zeitraum hinweg, es ist nur ein bisschen nachlassend und passt sich dann an die erforderliche Breite an. Während, wenn ich this.Width + = 1 in der gleichen Methode nenne (dies ist das Hauptprogrammfenster), ändert das Fenster die Größe des Grid Controls. Ich habe UpdateLayout() versucht, aber ohne Erfolg. Das sagt mir mein Timing ist in Ordnung.
Wenn jemand helfen könnte, würde es sehr geschätzt werden.
Hier ist meine Methode Openwindow ...
public void OpenWindow(int iIndex)
{
int iInterval = 1;
for (int i = (int)myDict[iIndex].Shell.Width; i < (int)stack_outter.Width; i += iInterval)
{
myDict[iIndex].Shell.Width += 1;
myDict[iIndex].Shell.UpdateLayout();
System.Threading.Thread.Sleep(1);
}
myDict[iIndex].Shell.Width = stack_outter.Width - (BUTTON_WIDTH * (myDict.Count - 1));
}
myDict ein Wörterbuch ist, Shell das Gitter ist, dass ich versucht bin zu animieren, wenn die Größenänderung. Es tut uns Leid über den Code, es ist chaotisch, mein Code immer gehackt wird, wenn ich Sachen zu bekommen versuche :)
Dank arbeiten,
Ash
Vielen Dank. Ich war mir der verschiedenen Threads, auf denen die Anwendung ausgeführt wird, nicht bewusst. Etwas zu lesen, denke ich :) Prost. –