Я в тупике от того, что я предполагаю, должно быть тривиальной проблемой. У меня есть панель, содержащая datagrid (ожидается, что она будет заполняться большинством реальных данных), и несколько кнопок и текстовых полей, прикрепленных к нижнему краю панели. Его классический datagrid + поиск комбо. То, что я застрял, заключается в том, что, хотя datagrid будет развиваться в большой «viewport» просто отлично, после того, как я уменьшусь приблизительно до 600 пикселей или около того, высота datagrid перестанет уменьшаться, нажав нижнее закрепленное содержимое за кадром , Я играл с различными настройками minHeight, и в то время как большие настройки работают (также, как это ни странно, накладывается на нижнюю часть, где она принадлежит, вместо экрана). меньшие настройки, по-видимому, по какой-то причине игнорируются или перезаписываются.datagrid и minHeight свойство
Кажется, что должна быть какая-то другая настройка, которую мне нужно сделать, но я уже много часов возился с этим, и я просто надеюсь, что один из вас точно знает, в чем проблема. Моя проблема в том, что я не знаю, что еще попробовать!
Вот несколько скриншотов, сначала предварительный просмотр дизайна, во-вторых, рендеринг браузера. Вы можете видеть, как нижний ряд кнопок отключается, и, если я еще больше сжимаю окно, я также отрежу часть частей данных.
Спасибо!
EDIT: вот код для моего тестового приложения, где все поведение - это то, что должно быть ... и иерархия точно имитирует происходящее в моем тестовом приложении (копирование/вставка непосредственно с).
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" width="100%" height="100%">
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
[Bindable]private var _data:ArrayCollection;
]]>
</fx:Script>
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<s:Group width="100%" height="100%">
<s:BorderContainer width="100%" height="100%"
backgroundColor="silver"
cornerRadius="8"
borderStyle="inset" borderWeight="1"
>
<!--Main application viewstack-->
<mx:ViewStack width="100%" height="100%" >
<s:NavigatorContent width="100%" height="100%">
<!--sub-application viewstack-->
<s:Group width="100%" height="100%">
<mx:ViewStack id="vs" width="100%" height="100%" x="0" y="0" >
<s:NavigatorContent width="100%" height="100%">
<s:Group width="100%" height="100%">
<s:Panel
minHeight="170"
title="Order Entry—Customer [Search for existing contacts...]" height="100%" width="100%">
<s:Scroller width="100%" height="100%">
<s:Group clipAndEnableScrolling="true">
<mx:DataGrid
id="dgSelect"
dataProvider="{_data}"
sortableColumns="false" resizableColumns="true" draggableColumns="false"
doubleClickEnabled="true"
allowMultipleSelection="false"
minHeight="68"
top="4" bottom="70" left="4" right="4">
<mx:columns>
<mx:DataGridColumn headerText="Last Name" dataField="LName" width="100" />
<mx:DataGridColumn headerText="First Name" dataField="FName" width="100" />
<mx:DataGridColumn headerText="Address" dataField="Address1" width="250" />
<mx:DataGridColumn headerText="City" dataField="City" width="100" />
<mx:DataGridColumn headerText="State" dataField="State" width="50" />
<mx:DataGridColumn headerText="Zip" dataField="Zip" width="50" />
<mx:DataGridColumn headerText="Email" dataField="EMail" />
</mx:columns>
</mx:DataGrid>
<s:Group bottom="40" left="4" width="100%" height="21">
<s:Label text="Last" width="41" height="22" verticalAlign="middle"/>
<s:TextInput id="txtSearchLast" maxChars="9" width="100" left="41"/>
<s:Label text="First" width="36" verticalAlign="middle" left="185" height="21"/>
<s:TextInput id="txtSearchFirst" maxChars="9" width="100" left="220"/>
<s:Label id="lblSearchError" color="#FF0000" fontSize="10" left="336" right="158"/>
<mx:Spacer width="100%"/>
<s:Button id="btnSearchSelect" label="Select" right="80"/>
<s:Button id="btnSearchEdit" label="Edit" right="4"/>
</s:Group>
<s:Group bottom="10" height="21">
<s:layout >
<s:HorizontalLayout paddingLeft="10" paddingRight="10"/>
</s:layout>
<mx:Button id="btnCancel" label="Cancel" />
<mx:Spacer/>
<mx:Button id="btnStartOver" label="Start Over" />
<mx:Spacer/>
<mx:Button id="btnExpressContact" label="Express Contact"/>
<mx:Button id="btnExpressCart" label="Ω" />
<mx:Spacer/>
<mx:Button id="btnCustomerNew" label="New Customer" />
<mx:Spacer/>
<mx:Button id="btnNext" label="Next" />
</s:Group>
</s:Group>
</s:Scroller>
</s:Panel>
</s:Group>
</s:NavigatorContent>
</mx:ViewStack>
</s:Group>
</s:NavigatorContent>
</mx:ViewStack>
</s:BorderContainer>
</s:Group>
</s:Application>
по видовом, я имею в виду только ту часть окна браузера, вы смотрите через. Извините, что запутался. – reidLinden
Насколько я понял, я попытаюсь воссоздать в настройке, которая не полностью сглажена в других деталях, просто ограничивая биты ui, без кода, связанного с поиском по базе данных. – reidLinden
нет кости на код. Я скопировал свою панель в новое приложение, удалил события ui из кнопок, datagrid и т. Д., И сложенная вещь работает точно так, как я думаю. Есть кое-что еще в том, как у меня есть вещи, вложенные перед панелью (компонент viewstack и некоторые другие группы), которые должны вызывать проблему. – reidLinden