为什么我不能在ASP.net中编辑下拉列表的位置?

时间:2016-04-11 13:44:19

标签: c# asp.net

我无法编辑(它突出显示为棕色)下拉列表控件" Top"源视图中的字段,在asp.net中,当使用Visual Studio时:

我可以编辑它下面的图像控件!

        <asp:DropDownList ID="DropDownList1" runat="server" 
            DataSourceID="SqlDataSource1" DataTextField="AccountIdent" 
            DataValueField="AccountIdent"           
            style="top: 102px; left: 0px; position: absolute; height: 24px; width: 114px; z-index: 1;">
        </asp:DropDownList>

        <asp:Image ID="Image3" runat="server"             
        style="top: 0px; left: 0px; position: absolute; height: 23px; width: 47px" />

为什么会这样?

2 个答案:

答案 0 :(得分:1)

我认为这是因为asp:Image会生成一个标记<img/>,下拉列表会生成更多标记。

你应该使用CssClasses,如果你不想把它放在另一个文件中,你可以在你的页面中使用它(在其他文件中保持css总是一个好主意),如:

<style type="text/css">
  .drop{
     top: 102px; left: 0px; position: absolute; height: 24px; width: 114px; z-index: 1;
  }
  .image{
     top: 0px; left: 0px; position: absolute; height: 23px; width: 47px
  }
</style>

<asp:DropDownList ID="DropDownList1" runat="server" 
                DataSourceID="SqlDataSource1" DataTextField="AccountIdent" 
                DataValueField="AccountIdent" CssClass="drop">
            </asp:DropDownList>

            <asp:Image ID="Image3" runat="server" CssClass="image"/>

答案 1 :(得分:1)

DropdownList没有Style属性,这就是您无法设置它的原因。为解决方案创建一个包含这些属性的css类并设置cssClass dropdownList到那个班级

喜欢

<style>
    .anyname {
        top: 102px; left: 0px; position: absolute; height: 24px; width: 114px; z-index: 1;
    }
</style>

并在下拉列表中 设置

  <asp:DropDownList ID="DropDownList1" runat="server" 
            DataSourceID="SqlDataSource1" DataTextField="AccountIdent" 
            DataValueField="AccountIdent"  CssClass="anyname">         
        </asp:DropDownList>