-1
これはソーシャルネットワークのメインページのHTMLコードです。 私はロードページによってデータベースから投稿テンプレット要素によって、GridViewコントロールや画像バインドを使用しますが、私はあなたがRowCommandイベントを使用する必要があり、各ポストのためcomntがbuttinショーのコメントどうすればロードページでデータを1つのgridviewにバインドし、gridview内のオブジェクトにクリックする
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1"
Runat="Server">
<asp:GridView ID="gvPosts" runat="server"
AutoGenerateColumns="False" Height="46px" Width="45px">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<fieldset class="color">
<fieldset>
<asp:Label ID="Label5" runat="server" Text='<%# Eval("username") %>'></asp:Label>
<div class="crope_main" id="zoom">
<asp:Image ID="ImageUSER" runat="server" Width="50px" Height="50px" ImageUrl='<%# Eval("picture") %>' />
</div>
<asp:Label ID="Label6" runat="server" Text='<%# Eval("biografy") %>'></asp:Label>
<fieldset>
<asp:Label ID="Label7" runat="server" Text='<%# Eval("date_post") %>'></asp:Label>
</fieldset>
</fieldset>
<asp:Image ID="imgeposts" runat="server" Height="200px" Width="400px" ImageUrl='<%# Eval("pic_book") %>' Style="margin-top: 43px; margin-right: 2px;" />
<fieldset>
<asp:Label ID="Label1" runat="server" Text="NameBOOk:"></asp:Label>
<asp:Label ID="Label2" runat="server" Text='<%# Eval("name_book") %>' />
</fieldset>
<fieldset>
<asp:Label ID="Label3" runat="server" Text="Writer:"></asp:Label>
<asp:Label ID="Label4" runat="server" Text='<%# Eval("wrieter") %>'></asp:Label>
</fieldset>
</fieldset>
<div>
<asp:Label ID="lblidpost" runat="server" Text='<%# Eval("id_post_FK") %>' Visible="false" />
<asp:Label ID="lbluser_id_email" runat="server" Text='<%# Eval("id_user_fk") %>' Visible="false" />
<asp:Label ID="lbllike" runat="server" Text='<%# Eval("SUM_LIKE") %>' />
</div>
<asp:TextBox ID="TxtSummery" runat="server" Text='<%# Eval("summery") %>' TextMode="MultiLine" Width="390px" Height="34px" Enabled="false"></asp:TextBox>
</div>
<div>
<asp:Button ID="btn_showComment" runat="server" Text="show comment" OnClick="btn_showComment_Click" />
</div>
<div>
<asp:TextBox runat="server" TextMode="MultiLine" Width="391px" ></asp:TextBox>
</div>
</ItemTemplate>
</asp:TemplateField>
<asp:ImageField>
</asp:ImageField>
</Columns>
</asp:GridView>
<asp:Image ID="imgLoader" runat="server" ImageUrl="~/images/loading.gif" />
</div>
</fieldset>
</asp:Content>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class pages_main : System.Web.UI.Page
{
string m,j, Btnn, ofline;
int k = 1, record = 0;
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{ BindData(); }
}
protected void BindData()
{
DataSet.usersDataTable oUserDataTable =
new DataSet.usersDataTable();
DataSetTableAdapters.usersTableAdapter oUserTableAdapter =
new DataSetTableAdapters.usersTableAdapter();
oUserTableAdapter.FillBy_userID(oUserDataTable, (Int64)Session["UserID"]);
DataSet.usersRow userrow = oUserDataTable[0];
//////////////////////////////////////////////////
DataSet.postDataTable postDatatabale = new DataSet.postDataTable();
DataSetTableAdapters.postTableAdapter postTabeladabtor = new DataSetTableAdapters.postTableAdapter();
postTabeladabtor.FillBy_showPost(postDatatabale, Session["email"].ToString());
///////////////////////////////////////////////////
//////////////////////////////////////////////////
if (postDatatabale.Count != 0)
{
DataSet.postRow postrow = postDatatabale[0];
string imageProfile = "~/profile/" + Session["Username"] + ".jpg";
gvPosts.DataSource = postDatatabale;
gvPosts.DataBind();
for (int i = 0; i < gvPosts.Rows.Count; i++)
{
ImageButton h = ((ImageButton)gvPosts.Rows[i].FindControl("imaglike"));
ImageButton h1 = ((ImageButton)gvPosts.Rows[i].FindControl("imageDisLike"));
//h.ID = "delbtn" + gvPosts.Rows[i];
// h1.ID = "imbtn" + gvPosts.Rows[i];
// h.ImageUrl = ("../Images/heart.png");
//h1.ImageUrl = ("../Images/Broken_Heart.png");
}
}
}
protected void btn_showComment_Click(object sender, EventArgs e)
{
GridViewRow gridViewRow = (GridViewRow)(sender as Control).Parent.Parent;
int index = gridViewRow.RowIndex;
Button btn = (Button)sender;
GridViewRow gvr = (GridViewRow)btn.NamingContainer;
m = ((Label)this.gvPosts.Rows[gvr.RowIndex].FindControl("lblidpost")).Text;
j = ((Label)this.gvPosts.Rows[gvr.RowIndex].FindControl("lbluser_id_email")).Text;
DataSet.commentDataTable comment = new DataSet.commentDataTable();
DataSetTableAdapters.commentTableAdapter ta_comment = new DataSetTableAdapters.commentTableAdapter();
ta_comment.FillBy_comment_post(comment, j, int.Parse(m));
DataSet.commentRow row = comment[index];
if(row.text_comment!="")
{
Response.Write("hello");
}
}
}
私の間違いは//ta_comment.FillBy_comment_post(comment、j、int.Parse(m))にあります。 DataSet.commentRow row = comment [index]; // – yasin
なので、コードを投げて何を尋ねますか?問題はどこにありますか? - > https://stackoverflow.com/help/mcve – Aristos
@yasin私の答えを確認できましたか? – hardkoded