将图像从字段数据库路径返回到数据网格

时间:2017-08-23 17:58:58

标签: asp.net visual-studio datagrid

我需要将徽标团队放在团队名称旁边,我有一个包含团队名称的表和一个名为logo的字段,如何直接从存储在文件夹中的路径中检索存储在文件夹映像中的徽标表中的字段, 我分享了我的桌子的图像,以便你的专家给我一个如何实现的方向! 问候 enter image description here

2 个答案:

答案 0 :(得分:1)

在asp.net的数据网格中显示图像非常简单。

 <asp:TemplateField  HeaderText="IMAGE"  ItemStyle-Wrap="false" ItemStyle-HorizontalAlign="Center">
                    <ItemTemplate>
                        <asp:Image ID="img" ImageUrl='<%#(Eval("IMAGE"))%>'  runat="server" Width="40px" Height="50px" CssClass="pic zoom" />
                    </ItemTemplate>

                </asp:TemplateField>

现在允许您的数据表有一个Image列,您可以在此处保存徽标图像的路径,这是我的数据表。

enter image description here

它是输出图像

enter image description here

答案 1 :(得分:0)

这是我的示例代码。 dataGridView1是一个DataGridView控件。

public partial class Form1 : Form
{
    public ObservableCollection<Person> Persons { get; set; }
    public Form1()
    {
        InitializeComponent();
        var Persons = new ObservableCollection<Person>();

        Persons.Add(new Person(1, "John", 5));
        Persons.Add(new Person(2, "Ed", 4));
        Persons.Add(new Person(3, "Sara", 3));
        dataGridView1.DataSource = Persons;
    }

    private void Form1_Load(object sender, EventArgs e)
    {

    }
}

public class Person
{
    public int Rank { get; set; }
    public string Name { get; private set; }
    public int Score { get; set; }
    public Image Star { get; set; }

    public Person(int rank, string name, int score)
    {
        Rank = rank;
        Name = name;
        Score = score;
        Star = DrawStarImage(score);
    }
    private Image DrawStarImage(int starCount)
    {
        var starIcon = Image.FromFile("E:\\temp\\download.jpg");

        // the image of all stars (the width has to be the width of one star multiplied by the count of stars)
        var image = new Bitmap(starCount * starIcon.Width, starIcon.Height);

        using (var g = Graphics.FromImage(image))
        {
            for (int i = 0; i < starCount; i++)
            {
                // place the star icon to its position in the loop
                int x = (i * starIcon.Width);

                // https://msdn.microsoft.com/de-de/library/dbsak4dc(v=vs.110).aspx
                g.DrawImage(starIcon, x, 0, starIcon.Width, starIcon.Height);
            }

            g.Flush();
        }
        return image;
    }
}