ASP.NET Ajax - элемент управления Autocompleteextender появляется позади других элементов управления

Если быть точным, у меня есть форма поиска с автозаполнением в верхней части. Когда вы вводите строку, она автоматически заполняется совпадениями в раскрывающемся списке, как и ожидалось.

Проблема в том, что пара элементов управления SliderExtender, расположенных ниже по форме, отображаются над раскрывающимся списком автозаполнения (он не охватывает эти элементы управления).

Я посмотрел вокруг, но пока не могу найти ответ. Кажется, что проблема может возникнуть с другими элементами управления, а не только для них.

1 ответ

Решение

Я нашел простой ответ, который работает для меня, и я упустил из виду. Я просто переключил позиционирование на абсолютное в классе CSS для AutoCompleteExtender, а затем установил для него Z-индекс. Список предложений для автозаполнения теперь отображается над всеми остальными элементами.

Код для управления в.aspx Я применил свой собственный CSS:

<cc1:AutoCompleteExtender ID="componentID_AutoCompleteExtender" runat="server" 
        TargetControlID="componentID"
        ServicePath="ImageComponentService.asmx" 
        ServiceMethod="GetComponentMatches"
        MinimumPrefixLength="3" 
        CompletionInterval="1000"
        EnableCaching="true" 
        CompletionSetCount="10" 
        CompletionListCssClass="CompletionListCssClass"
        CompletionListItemCssClass="CompletionListItemCssClass" 
        CompletionListHighlightedItemCssClass="CompletionListHighlightedItemCssClass" 
        OnClientItemSelected="itemSelected"
        Enabled="true" FirstRowSelected="true"
        BehaviorID="AutoCompleteEx">
    </cc1:AutoCompleteExtender>

CSS

.CompletionListCssClass
{
    font-size: 11px;
    color: #000;
    padding: 3px 5px;
    border: 1px solid #999;
    background: #fff;
    width: 300px;
    float: left;
    z-index: 1;
    position:absolute;
    margin-left:0px;
}
Другие вопросы по тегам