- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ASP GridViewの高さを固定にするには?)
ASP GridViewの高さを固定にする方法
このQ&Aのポイント
- GridViewで全角10文字がちょうど表示できる幅を設定した場合、10文字を超えるデータを表示しようとするととセル内で折り返してしまいます。折り返しせず、10文字だけ表示するにはどうすればいいのでしょうか?
- <div id="containerData" class="containerData" onscroll="containerHeader.scrollLeft=this.scrollLeft;" runat="server"> <asp:UpdatePanel ID="UpdPlView" runat="server" UpdateMode="Conditional"> <ContentTemplate> <asp:GridView ID="grdList" runat="server" CellPadding="0" AutoGenerateColumns="False" DataSourceID="sqldsList" ShowHeader="False" AllowPaging="False" ShowFooter="True" GridLines="None"> <Columns> <asp:TemplateField HeaderText=""> <ItemTemplate> <table cellspacing="0" class="detailRow"> <tr> <td style="width:100px;"><asp:Label ID="lbl1" runat="server" Text='<%# Eval("Field1") %>'></asp:Label></td> <td style="width:500px;"><asp:Label ID="lbl2" runat="server" Text='<%# Eval("Field2") %>'></asp:Label></td> </tr> </table> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> </ContentTemplate> </asp:UpdatePanel> </div>
- ***スタイルシート*** .containerData { font-size: 11pt; border: solid 1px black; height: 500px; } .detailRow tr { height:30px; background:white; } .detailRow td { border-bottom: 1px solid black; }
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
いろんなやり方があると思いますが。 データの先頭10文字までを表示する、という考え方でよければ、カスタムバインド使ってデータをPublicなメソッドに渡して、その中で文字数を10文字で切り出してしまうのが簡単かと。 カスタムバインド使う例は次のような感じで。 http://blogonos.wordpress.com/2006/05/11/%e3%83%87%e3%83%bc%e3%82%bf%e3%81%ae%e5%80%a4%e3%81%ab%e3%82%88%e3%81%a3%e3%81%a6gridview%e3%81%ab%e8%a1%a8%e7%a4%ba%e3%81%95%e3%82%8c%e3%82%8b%e3%82%b3%e3%83%b3%e3%83%88%e3%83%ad%e3%83%bc%e3%83%ab/ ただ、Webですよね。 「全角10文字がちょうど表示できる幅を設定した」ということですが、ブラウザ側で利用するフォントを強制的に指定してたりすると、フォントの幅によっては9文字で折り返したりといったことが発生するかと思います。 幅を指定することを考えるより、中に表示するものをどうするか、を考えたほうがいいかと思います。
お礼
幅を指定しない方法を考えてみます。 ありがとうございました。