Ошибка от редактора к редактору происходит, когда Вы имеете смешанное добавление отступа в файле . Это возникает следующим образом: блок кода располагается с отступом с 4 пробелами, и затем одним уровнем отступа "в", это располагается с отступом с вкладками. Теперь у язычника, который сделал это (смешивание вкладок и пробелов) был он так, его вкладки являются также 4 пробелами, таким образом, он не видит проблем, и Python не видит проблем.
Теперь наша жертва приезжает позже, и ему установили его вкладки на 8 пробелов. Теперь наши жертвы думают, что код смотрит, все били, и фиксирует его удаление одного уровня добавления отступа , который теперь делает код , взгляд как он является все еще 2 уровнями добавления отступа, но действительно один уровень . В этой точке весь ад вырывается на свободу.
урок здесь - то, что Вы никогда не должны, вкладки соединения и пробелы. Если Вы придерживаетесь этого, то легко повторно расположить Ваш код с отступом в пробелы или вкладки, независимо от которых Вы лично используете. Лучший способ удостовериться Вы не смешиваете вкладки, и пробелы должен всегда работать python
с -tt
, который произведет ошибку, когда вкладки и пробелы будут смешаны.
Что касается вкладок и пробелов, я лично использую вкладки так отдельное добавление отступа от появления - намного легче изменить появление кода, когда это располагается с отступом с вкладками, чем это с пробелами. Я знаю, что это работает вопреки тому, что делают 99% Python программистов, но это - мой персональный предпочтение, и легко в любом случае преобразовать файл с вкладками в расположенный с интервалами. Реверс не всегда верен, так как можно случайно бить 4 пробелов в строках, и т.д.
Этот вопрос старый, но, поскольку я нашел свое здесь, я думал, что выкину свое решение. Приведенный ниже код предназначен для элемента управления с двумя вкладками, и каждая вкладка содержит элемент управления для заполнения вкладки. Я удалил явно заданную ширину и высоту и установил горизонтальное и вертикальное выравнивание на auto для всех элементов управления, размер которых я хотел изменить. Элемент управления вкладки растягивается с основным окном. Элементы управления на вкладках растягиваются, чтобы заполнить вкладки. Информация пришла из ответов здесь. Я просто привел полный пример.
Надеюсь, это кому-нибудь пригодится.
<TabControl HorizontalAlignment="Stretch"
Margin="91,0,0,0" Name="tabControl1"
VerticalAlignment="Stretch" >
<TabItem Header="DataGrid" Name="tabItem1">
<Grid>
<DataGrid AutoGenerateColumns="False"
HorizontalAlignment="Stretch"
Name="dgFTPLog"
VerticalAlignment="Stretch"
Margin="6,6,0,0" />
</Grid>
</TabItem>
<TabItem Header="Log" Name="tabItem2">
<Grid>
<TextBox
HorizontalAlignment="Stretch"
Margin="6,6,0,0" Name="txtLog"
VerticalAlignment="Stretch"
VerticalScrollBarVisibility="Auto"
HorizontalScrollBarVisibility="Auto"
TextChanged="txtLog_TextChanged" />
</Grid>
</TabItem>
</TabControl>