文字列の4項目ごとに改行を挿入しますか?

Dejsa Cocan

改行なしでサムネイルを次々に設定する文字列があります。画像は、画像が含まれる領域の最大幅に達すると、次の行に折り返されます。4つおきのサムネイルの後に改行を挿入したいのですが、コードはほぼ機能しますが、1つ目以降も新しい行が追加され続けます。画像-これは間違っているように見えます。サムネイル画像が7つある場合、改行は1つだけ追加する必要があり、それは4番目の画像の後になります。

SQLデータベースからのサムネイル情報を使用して文字列を呼び出して構築するために使用されるクラス情報は次のとおりです。

protected List<GlassItem> GetGlassItems(Guid CurrentPage)
    {
        var items = new List<GlassItem>();
        using (MySqlConnection cn = new MySqlConnection(ConfigurationManager.ConnectionStrings["Sitefinity"].ToString()))
        {
            cn.Open();

            MySqlCommand cmd = new MySqlCommand("SELECT id, BrandID, GlassName, Thumbnail, LargeImage, Ordinal, (SELECT Window_Brands.BrandName FROM Window_Brands WHERE Window_Brands.BrandPage = BrandID) AS BrandName FROM Window_Brand_cutglass WHERE BrandID = ?PageID AND Thumbnail IS NOT NULL AND LargeImage IS NOT NULL ORDER BY Ordinal", cn);
            cmd.Parameters.Add(new MySqlParameter("PageID", CurrentPage.ToString()));

            using (MySqlDataReader reader = cmd.ExecuteReader())
            {
                while (reader.Read())
                {
                    if (reader["Thumbnail"].ToString().Length > 1 && reader["LargeImage"].ToString().Length > 1)
                    {
                        items.Add(new GlassItem
                        {
                            LargeImagePath = Revere.GetImagePath(reader["LargeImage"].ToString()),
                            ThumbnailPath = Revere.GetImagePath(reader["Thumbnail"].ToString()),
                            GlassName = reader["GlassName"].ToString()
                        });
                    }
                }
            }
            cn.Close();
        }
        return items;
    }

これは、GetGlassItemsクラスを利用するコードのビットです。これは、4番目のアイテムごとに新しい行が挿入されることを意味しますが、最初のアイテムの後に新しい行を追加する場所でもあります。

protected String BuildCutGlass(Guid CurrentPage)
 {
        var items = GetGlassItems(new Guid(CurrentPage.ToString()));
        StringBuilder Glass = new StringBuilder();

        for (int i = 0; i < items.Count; i++)
        {
            Glass.Append(String.Format("<div class='GlassItem'><a href='{0}' class='CutGlassPopup Icon'><img src='{1}' alt='{2}' width='77' height='77' /></a><a href='{0}' class='CutGlassPopup'>{2}</a></div>",
                                        items[i].LargeImagePath,
                                        items[i].ThumbnailPath,
                                        items[i].GlassName));
            Console.Write("count: " + items.Count.ToString() + "<br />");
            if (i == 4)
            {
                // new line every 4 items
                Glass.Append("<div style='clear: both;'></div>");
            }
        }

        return Glass.ToString();
    }

上記のコードを編集して、最初のサムネイルの後に新しい行が追加されないようにするにはどうすればよいですか?

ハビブ

モジュラス演算子によるチェックが必要です。

if (i % 4 == 0)

これにより、4行ごとに新しい行を挿入できます。

ただし、これにより、最初の項目にも新しい行が挿入されます。これi00 % 4を返すため0です。したがって、小切手を次のように変更します。

if(i != 0 && i % 4 == 0)

現在のチェックでi == 4は、最初の4行の後にのみ行が追加されます。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Rの文字列のk番目ごとの位置に文字を挿入します

分類Dev

N番目の単語ごとに文字列を挿入します

分類Dev

v-forループのn番目ごとの項目の後に項目を挿入します

分類Dev

文字列のリストのn番目の要素ごとに文字列を挿入します

分類Dev

Juliaを使用して、文字列に10文字ごとに改行文字を挿入します

分類Dev

配列内の 3 つの項目ごとに、別の配列からの文字列を連結します。

分類Dev

n個の項目の後に改行を挿入して文字列のリストをファイルに出力します

分類Dev

文字列に改行を挿入します

分類Dev

javascriptで3行ごとに改行を挿入しますか?

分類Dev

PHPは4番目の画像ごとに新しい行を挿入します

分類Dev

リスト内包表記:入力リストの項目ごとに2つの項目を作成しますか?

分類Dev

Notepad ++文字列の2文字ごとに文字を挿入します

分類Dev

文字列の3文字ごとに文字を挿入します

分類Dev

文字列のN番目ごとにスペースを挿入する関数が、思ったとおりに機能していませんか?

分類Dev

文字列を指定すると、50番目の位置に新しい改行文字を挿入し、単語全体を除外します

分類Dev

excel-文字列のn文字ごとに単一の空白を挿入します

分類Dev

ワードプレスループ(php)の3項目ごとにdivを挿入します

分類Dev

Pythonを使用して、14個の数字ごとに改行文字を挿入します

分類Dev

文字列のn番目の要素ごとに文字を挿入する(stringstreamを使用しない)

分類Dev

N文字ごとに改行文字を長い文字列に挿入する方法

分類Dev

Rに条件ごとに文字列を挿入します

分類Dev

javascriptを使用してn番目の改行ごとに文字列を分割する

分類Dev

入力した文字列の改行文字ごとに、結果セットに新しい行を作成します

分類Dev

WordPress:2つのメニュー項目の間に文字を挿入します

分類Dev

N文字を変更するC ++の文字列にN文字ごとに文字を挿入します

分類Dev

2番目の文字の後にスペースを挿入し、その後に3文字ごとにスペースを挿入します

分類Dev

Pythonは、文字「X」の後に文字列に改行を挿入します

分類Dev

文字列からn番目ごとの文字を抽出します

分類Dev

文字列からn番目ごとの文字を抽出します

Related 関連記事

  1. 1

    Rの文字列のk番目ごとの位置に文字を挿入します

  2. 2

    N番目の単語ごとに文字列を挿入します

  3. 3

    v-forループのn番目ごとの項目の後に項目を挿入します

  4. 4

    文字列のリストのn番目の要素ごとに文字列を挿入します

  5. 5

    Juliaを使用して、文字列に10文字ごとに改行文字を挿入します

  6. 6

    配列内の 3 つの項目ごとに、別の配列からの文字列を連結します。

  7. 7

    n個の項目の後に改行を挿入して文字列のリストをファイルに出力します

  8. 8

    文字列に改行を挿入します

  9. 9

    javascriptで3行ごとに改行を挿入しますか?

  10. 10

    PHPは4番目の画像ごとに新しい行を挿入します

  11. 11

    リスト内包表記:入力リストの項目ごとに2つの項目を作成しますか?

  12. 12

    Notepad ++文字列の2文字ごとに文字を挿入します

  13. 13

    文字列の3文字ごとに文字を挿入します

  14. 14

    文字列のN番目ごとにスペースを挿入する関数が、思ったとおりに機能していませんか?

  15. 15

    文字列を指定すると、50番目の位置に新しい改行文字を挿入し、単語全体を除外します

  16. 16

    excel-文字列のn文字ごとに単一の空白を挿入します

  17. 17

    ワードプレスループ(php)の3項目ごとにdivを挿入します

  18. 18

    Pythonを使用して、14個の数字ごとに改行文字を挿入します

  19. 19

    文字列のn番目の要素ごとに文字を挿入する(stringstreamを使用しない)

  20. 20

    N文字ごとに改行文字を長い文字列に挿入する方法

  21. 21

    Rに条件ごとに文字列を挿入します

  22. 22

    javascriptを使用してn番目の改行ごとに文字列を分割する

  23. 23

    入力した文字列の改行文字ごとに、結果セットに新しい行を作成します

  24. 24

    WordPress:2つのメニュー項目の間に文字を挿入します

  25. 25

    N文字を変更するC ++の文字列にN文字ごとに文字を挿入します

  26. 26

    2番目の文字の後にスペースを挿入し、その後に3文字ごとにスペースを挿入します

  27. 27

    Pythonは、文字「X」の後に文字列に改行を挿入します

  28. 28

    文字列からn番目ごとの文字を抽出します

  29. 29

    文字列からn番目ごとの文字を抽出します

ホットタグ

アーカイブ