Vielen Dank Abt,
das ist ein echter Jammer 🙁 Könnte man nicht versuchen 3 echte Routen manuell zu basteln, die bei einem GET dann einen Status 200 und als Content diese Dateien ausspucken? Leider fehlen mir hier etwas die Kenntnisse und auch Google hat mich nicht sehr weit gebracht. Unter ASP würde ich jetzt halt einfach 3 Controller hinzufügen...
Hi,
ich baue gerade eine Blazor-Anwendung die Clientside funktionieren soll (Web assembly). Darin kann man eine Zip-Datei angeben die dann ausgepackt und deren Inhalt ins Root-Verzeichnis gepackt wird:
MemoryStream ms ...
using (var zipArchive = new ZipArchive(ms))
zipArchive.ExtractToDirectory(Directory.GetCurrentDirectory());
Führe ich folgendes aus:
var files = Directory.GetFileSystemEntries(Directory.GetCurrentDirectory());
... sehe ich das die Dateien dort liegen. Nun muss ich zwingend and diese Dateien über die URL kommen können. Das verlangt leider eine JS-Komponente die von einem Drittanbieter ist. Wie mache ich eine Route die diese Dateien exponiert? Die Dateien heißen immer gleich und es sind immer 3 Stück.
@Abt: Ja, es sind DIP's soweit ich weiß. Nennen wir es "Größeneinheiten"^^ Auf dem Screenshot ist aber zu sehen, dass die mittlere Row 3 mal so hoch ist wie die anderen beiden welche angeblich 19 Größeneinheiten hoch sind.
@Th69: Danke! MaxHeight hilft tatsächlich...dachte die zu setzen wäre sinnlos wenn ich doch einen festen Wert angebe.
Hi,
ich habe ein seltsames Problem. Bitte fügt mal folgenden Code in ein neues WPF-Fenster ein:
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="8"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="8"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBox Text="1234" Grid.Row="0" Grid.Column="0"/>
<Border Grid.Row="1" Grid.Column="0" Background="Aqua"/> <!--Nur zur Visualisierung wie groß Row 1 ist-->
<TextBox Text="1234" Grid.Row="2" Grid.Column="0"/>
<Button Grid.Row="0" Grid.RowSpan="3" Grid.Column="2" Padding="0" Width="{Binding RelativeSource={RelativeSource Self}, Path=ActualHeight}" VerticalAlignment="Stretch">
<Border Background="Red" VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
<StackPanel>
<TextBlock Text="1234231312123123"/>
<TextBlock Text="1234231312123123"/>
<TextBlock Text="1234231312123123"/>
</StackPanel>
</Border>
</Button>
</Grid>
Im Anhang ist ein Screenshot wie es bei mir aussieht. Bitte auch die Maßangaben der Rows auf der linken Seite beachten^^
Ich möchte die zwei TextBoxen in einem festen Abstand von 8 Pixeln übereinander haben. Rechts daneben soll ein quadratischer Button in einem Abstand von ebenfalls 8 Pixeln sein, dessen Höhe gleich dem beider Textboxen zusammen + deren Abstand ist. Nun wird aber die mittlere Row weit über 8 Pixeln auseinander gezogen...kann mir das wer erklären? Entferne ich den Inhalt des Buttons, ist es korrekt.
Ich möchte gern allen die das gleich Problem haben viel Kopfschmerzen ersparen. Anstatt der WPFApp Referenzen auf das Projekt zu geben, erstellt das Projekt auf das ihr verweisen wollt und fügt eine Referenz auf die DLL hinzu...nichts weiter. So geht es...
Korrekt. Brush != Color
Ein Brush kann vieles sein... zB ein GradientBrush der einen Farbverlauf darstellt.
Magst du mal mehr code posten? Hab es eben ausprobiert und es funktioniert bei mir genau so:
<Button Width="100" Height="20" Background="Red">
<Button.Template>
<ControlTemplate TargetType="{x:Type Button}">
<Grid>
<Rectangle Fill="{TemplateBinding Background}"/>
</Grid>
</ControlTemplate>
</Button.Template>
</Button>
Bzw auch so:
<Window>
....
<Grid>
<Grid.Resources>
<ControlTemplate x:Key="myBtn" TargetType="{x:Type Button}">
<Grid>
<Rectangle Fill="{TemplateBinding Background}"/>
</Grid>
</ControlTemplate>
</Grid.Resources>
<Button Width="100" Height="20" Template="{StaticResource myBtn}"
Background="Red"/>
</Grid>
</Window>
<Grid>
<Rectangle x:Name="btnForm" Fill="{TemplateBinding Background}"/>
</Grid>
sollte schon helfen, denke ich.
Hi,
ich habe eine Klassenbibliothek an einem bestimmten Ort...sagen wir
C:\Projects\WpfThemes.csproj
Darin liegt ein ResourceDictionary mit diversen styles in einem Unterordner:
C:\Projects\WpfThemes\Styles\StylesRS.xaml
Nun habe ich eine neue Wpf Application an einem anderen Ort. Sagen wir
C:\Projects\MeineWpfApp\MeineWpfApp.csproj
Jetzt möchte ich in in der App.xaml von MeineWpfApp StylesRS.xaml einbinden. Ich habe WpfThemes der Projektmappe hinzugefügt in der auch MeineWpfApp liegt. MeineWpfApp hat auch eine Referenz auf WpfThemes.
Im Netz finde ich immer diese Lösung:
pack://application:,,,/ReferencedAssembly;component/Subfolder/ResourceFile.xaml
Also in meinem Fall:
pack://application:,,,/WpfThemes;component/Styles/StylesRS.xaml
Aber dann kriege ich eine XamlParseException mit der Inner Exception:
IOException: Die Ressource "styles/stylesrs.xaml" kann nicht gefunden werden.
Alles ist .Net5
Kann mir jemand sagen was ich falsch mache?
Vielen Dank für den Tipp. Ich stelle meine Nachforschungen aber nun ein. Wir haben aus anderen Gründen nun von .Net Framework 4.7 auf 4.8 migriert. Hier ist das Problem nicht mehr vorhanden. Das verwenden von DynamicResource hat keinen spürbaren Einfluss mehr. Offenbar hat MS da nochmal was verbessert.