如何使用表格在一行上显示多个图像? [英] how to display multiple images on a single row using Table?

查看:91
本文介绍了如何使用表格在一行上显示多个图像?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我这样做是为了逐行显示多个图像,但是图像一直显示在同一行上。

页面应该以这种格式显示图像:

I did this to display multiple images row wise, but the image keeps displaying on the same row.
The page should show images in this format:

----------------------------------------
|                 |                   |
|                 |                   |
|   Image 1       |     Image 2       |
|                 |                   |
|                 |                   |
----------------------------------------
----------------------------------------
|                 |                   |
|                 |                   |
|   Image 3       |     Image 4       |
|                 |                   |
|                 |                   |
----------------------------------------





我这样做了

但缺乏上述观点。



I did this
but lacking above view.

TableRow tRow = new TableRow();
     for (int i = 0; i < sqlDt.Rows.Count; i++)
     {
         TableCell tCell = new TableCell();
         Image myImg = new Image
         {
             ImageUrl = sqlDt.Rows[i]["MyImagePath"].ToString(),
             AlternateText = sqlDt.Rows[i]["Name"].ToString(),
             Width = 100,
             Height = 100
         };
         tCell.Controls.Add(myImg);
         Label l = new Label
         {
             Text = "<br>" + sqlDt.Rows[i]["Name"].ToString(),
         };
         l.Style.Add("font-weight", "bold");
         l.Style.Add("text-align", "center");
         tCell.Controls.Add(l);

         tRow.Cells.Add(tCell);
     }
     myTable.Rows.Add(tRow);





怎么做到这一点?



How to achieve this?

推荐答案

试试这个...我希望这对你有帮助

int count = 0;

for(int i = 0; i< sqlDt.Rows.Count; i ++)

{

TableRow tRow = new TableRow();

TableCell tCell = new TableCell();

Image myImg =新图像

{

ImageUrl = sqlDt.Rows [i] [MyImagePath]。ToString(),

AlternateText = sqlDt。行[i] [名称] .ToString(),

宽度= 100,

高度= 100

};

tCell.Controls.Add(myImg);

标签l =新标签

{

Text =+ sqlDt .Rows [i] [Name]。ToString(),

};

l.Style.Add(font-weight,bold);

l.Style.Add(text-align,center);

tCell.Controls.Add(l);

tRow.Cells.Add(tCell);

count ++;



if(count%2 == 0)

{

myTable.Rows.Add(tRow);

}

if(i == sqlDt.Rows.Count-1 && count%2!= 0)

{

myTable.Rows.Add(tRow);

}





}
Try this.. I hope this is helpfull to you
int count=0;
for (int i = 0; i < sqlDt.Rows.Count; i++)
{
TableRow tRow = new TableRow();
TableCell tCell = new TableCell();
Image myImg = new Image
{
ImageUrl = sqlDt.Rows[i]["MyImagePath"].ToString(),
AlternateText = sqlDt.Rows[i]["Name"].ToString(),
Width = 100,
Height = 100
};
tCell.Controls.Add(myImg);
Label l = new Label
{
Text = "" + sqlDt.Rows[i]["Name"].ToString(),
};
l.Style.Add("font-weight", "bold");
l.Style.Add("text-align", "center");
tCell.Controls.Add(l);
tRow.Cells.Add(tCell);
count++;

if(count%2==0)
{
myTable.Rows.Add(tRow);
}
if(i==sqlDt.Rows.Count-1 && count%2!=0)
{
myTable.Rows.Add(tRow);
}


}


DataTable dt = GetDataFromDatabase();

var sb = new System.Text.StringBuilder();
sb.AppendLine();
sb.AppendLine("<table>");

int cellCount = 0;

foreach (DataRow dr in dt.Rows)
{
    cellCount = cellCount + 1;

    if (cellCount == 1)
        sb.AppendLine("<tr>");

    string imagepath = dr["MyImagePath"] + "";
    string name = dr["Name"] + "";

    sb.AppendLine("<td style=\"font-weight: bold; text-align: center;\">");
    sb.Append("<img src=\"");
    sb.Append(imagepath);
    sb.Append("\" style=\"height: 100px; width: 100px;\" alt=\"");
    sb.Append(name);
    sb.Append("\" /><br />");
    sb.AppendLine(name);
    sb.AppendLine("</td>");

    if (cellCount >= 2)
    {
        sb.AppendLine("</tr>");
        cellCount = 0;
    }
}

if (cellCount == 1)
    sb.AppendLine("<td></td></tr>");

sb.AppendLine("</table>");

Form.Controls.Add(new LiteralControl(sb.ToString()));


这篇关于如何使用表格在一行上显示多个图像?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆