zip
все списки значений вместе, а затем зашифруйте каждое результирующее tuple
значений с помощью клавиш, чтобы сделать новые dict
с:
result = [dict(zip(d, vs)) for vs in zip(*d.values())]
Это работает, потому что порядок итераций для dict
согласуется с порядком итераций его значений (это порядок вставки в 3.6+, но он совместим для данного запуска Python для всех версий); ключи из d
в «каждом цикле» zip
будут повторяться в том же порядке, в котором значения были вытянуты вперед zip
.
Это предполагает, что под «возрастающим порядком» вы подразумеваете «сохраняет порядок входных данных»; если это не так, разумное использование встроенного sorted
было бы необходимо.
Я думаю, что Вы пропускаете некоторые двойные кавычки:
Попробуйте это:
<Window.Resources>
<Style TargetType="{x:Type UserControl}">
<Setter Property="Background" Value="Red" />
</Style>
</Window.Resources>
<Grid>
<UserControl Name="control" Content="content"></UserControl>
</Grid>
Можно только установить стиль на определенный класс, таким образом, это будет работать (создайте объект UserControl, не очень полезный):
<Window.Resources>
<Style TargetType="{x:Type UserControl}">
<Setter Property="Background" Value="Red" />
</Style>
</Window.Resources>
<Grid>
<UserControl Name="control" Content="content"></UserControl>
</Grid>
Но это не делает (Создайте класс, полученный из UserControl):
<Window.Resources>
<Style TargetType="{x:Type UserControl}">
<Setter Property="Background" Value="Red" />
</Style>
</Window.Resources>
<Grid>
<l:MyUserControl Name="control" Content="content"></l:MyUserControl>
</Grid>
То, что можно сделать, или явно установлено стиль с помощью Свойства стиля:
<Window.Resources>
<Style TargetType="{x:Type UserControl}" x:Key="UCStyle">
<Setter Property="Background" Value="Red" />
</Style>
</Window.Resources>
<Grid>
<l:MyUserControl Name="control" Content="content" Style="{StaticResource UCStyle}"></l:MyUserControl>
</Grid>
или создайте стиль для каждого производного класса, можно использовать BasedOn, чтобы не копировать содержание стиля:
<Window.Resources>
<Style TargetType="{x:Type UserControl}" x:Key="UCStyle">
<Setter Property="Background" Value="Red" />
</Style>
<Style TargetType="{x:Type l:MyUserControl}" BasedOn="{StaticResource UCStyle}" />
</Window.Resources>
<Grid>
<l:MyUserControl Name="control" Content="content"></l:MyUserControl>
</Grid>