更新时间:2023-10-11 08:01:58
if (e.Row.RowType == DataControlRowType.DataRow)
{
System.Web.UI.WebControls.Label lblRoleNo = (System.Web.UI.WebControls.Label)e.Row.FindControl("lblRoleId");
System.Web.UI.WebControls.Label lblSupervisorName = (System.Web.UI.WebControls.Label)e.Row.FindControl("lblSupervisorName");
System.Web.UI.WebControls.Label lblUserECode = (System.Web.UI.WebControls.Label)e.Row.FindControl("lblUserECode");
System.Web.UI.WebControls.Label lblUserName = (System.Web.UI.WebControls.Label)e.Row.FindControl("lblUserName");
System.Web.UI.WebControls.Label lblDesignation = (System.Web.UI.WebControls.Label)e.Row.FindControl("lblDesignation");
System.Web.UI.WebControls.Label lblLDTraining = (System.Web.UI.WebControls.Label)e.Row.FindControl("lblLDTraining");
System.Web.UI.WebControls.Label lblNonProduction = (System.Web.UI.WebControls.Label)e.Row.FindControl("lblNonProduction");
System.Web.UI.WebControls.Label lblProcessSupport = (System.Web.UI.WebControls.Label)e.Row.FindControl("lblProcessSupport");
System.Web.UI.WebControls.Label lblProcessTraining = (System.Web.UI.WebControls.Label)e.Row.FindControl("lblProcessTraining");
System.Web.UI.WebControls.Label lblProduction = (System.Web.UI.WebControls.Label)e.Row.FindControl("lblProduction");
System.Web.UI.WebControls.Label lblSystemDowntime = (System.Web.UI.WebControls.Label)e.Row.FindControl("lblSystemDowntime");
System.Web.UI.WebControls.Label lblGrandTotal = (System.Web.UI.WebControls.Label)e.Row.FindControl("lblGrandTotal");
//Checking weather Columns exist in the Pivot or not
var dataRow = (DataRowView)e.Row.DataItem;
var columnNameToCheck = "L & D Training%";
var checkTraining = dataRow.Row.Table.Columns.Cast<datacolumn>().Any(x => x.ColumnName.Equals(columnNameToCheck, StringComparison.InvariantCultureIgnoreCase));
if (checkTraining)
{
// Property available
lblLDTraining.Text = (DataBinder.Eval(e.Row.DataItem, "L & D Training%")).ToString();
}
else
{
lblLDTraining.Visible = false;
}
var columnNonProduction = "Non Production%";
var checkNonProduction = dataRow.Row.Table.Columns.Cast<datacolumn>().Any(x => x.ColumnName.Equals(columnNonProduction, StringComparison.InvariantCultureIgnoreCase));
if (checkNonProduction)
{
// Property available
lblNonProduction.Text = (DataBinder.Eval(e.Row.DataItem, "Non Production%")).ToString();
}
else
{
lblNonProduction.Visible = false;
}
var columnProcessSupport = "Process Support%";
var checkProcessSupport = dataRow.Row.Table.Columns.Cast<datacolumn>().Any(x => x.ColumnName.Equals(columnProcessSupport, StringComparison.InvariantCultureIgnoreCase));
if (checkProcessSupport)
{
// Property available
lblProcessSupport.Text = (DataBinder.Eval(e.Row.DataItem, "Process Support%")).ToString();
}
else
{
lblProcessSupport.Visible = false;
}
var columnProcessTraining = "Process Training%";
var checkProcesstraining = dataRow.Row.Table.Columns.Cast<datacolumn>().Any(x => x.ColumnName.Equals(columnProcessTraining, StringComparison.InvariantCultureIgnoreCase));
if (checkProcesstraining)
{
// Property available
lblProcessTraining.Text = (DataBinder.Eval(e.Row.DataItem, "Process Training%")).ToString();
}
else
{
lblProcessTraining.Visible = false;
}
var columnProduction = "Production%";
var checkProduction = dataRow.Row.Table.Columns.Cast<datacolumn>().Any(x => x.ColumnName.Equals(columnProduction, StringComparison.InvariantCultureIgnoreCase));
if (checkProduction)
{
// Property available
lblProduction.Text = (DataBinder.Eval(e.Row.DataItem, "Production%")).ToString();
}
else
{
lblProduction.Visible = false;
}
var columnSystemDownTime = "System Downtime%";
var checkSystemDownTime = dataRow.Row.Table.Columns.Cast<datacolumn>().Any(x => x.ColumnName.Equals(columnSystemDownTime, StringComparison.InvariantCultureIgnoreCase));
if (checkSystemDownTime)
{
// Property available
lblSystemDowntime.Text = (DataBinder.Eval(e.Row.DataItem, "System Downtime%")).ToString();
}
else
{
lblSystemDowntime.Visible = false;
}
var columnGrandTotal = "Grand Total%";
var checkGrandTotal = dataRow.Row.Table.Columns.Cast<datacolumn>().Any(x => x.ColumnName.Equals(columnGrandTotal, StringComparison.InvariantCultureIgnoreCase));
if (checkGrandTotal)
{
// Property available
lblGrandTotal.Text = (DataBinder.Eval(e.Row.DataItem, "Grand Total%")).ToString();
}
else
{
lblGrandTotal.Visible = false;
}
var columnNameToCheckRoleID = "RoleId";
var checkRoleID = dataRow.Row.Table.Columns.Cast<datacolumn>().Any(x => x.ColumnName.Equals(columnNameToCheckRoleID, StringComparison.InvariantCultureIgnoreCase));
if (checkRoleID)
{
// Property available
lblRoleNo.Text = (DataBinder.Eval(e.Row.DataItem, "RoleId")).ToString();
}
else
{
lblRoleNo.Visible = false;
}
var columnNameToCheckSupervisorName = "SupervisorName";
var checkSupervisorName = dataRow.Row.Table.Columns.Cast<datacolumn>().Any(x => x.ColumnName.Equals(columnNameToCheckSupervisorName, StringComparison.InvariantCultureIgnoreCase));
if (checkSupervisorName)
{
// Property available
lblSupervisorName.Text = (DataBinder.Eval(e.Row.DataItem, "SupervisorName")).ToString();
}
else
{
lblSupervisorName.Visible = false;
}
var columnNameToCheckUserECode = "UserECode";
var checkUserECode = dataRow.Row.Table.Columns.Cast<datacolumn>().Any(x => x.ColumnName.Equals(columnNameToCheckUserECode, StringComparison.InvariantCultureIgnoreCase));
if (checkUserECode)
{
// Property available
lblUserECode.Text = (DataBinder.Eval(e.Row.DataItem, "UserECode")).ToString();
}
else
{
lblUserECode.Visible = false;
}
var columnNameToCheckUserName = "UserName";
var checkUserName = dataRow.Row.Table.Columns.Cast<datacolumn>().Any(x => x.ColumnName.Equals(columnNameToCheckUserName, StringComparison.InvariantCultureIgnoreCase));
if (checkUserName)
{
// Property available
lblUserName.Text = (DataBinder.Eval(e.Row.DataItem, "UserName")).ToString();
}
else
{
lblUserName.Visible = false;
}
var columnNameToCheckDesignation = "Designation";
var checkDesignation = dataRow.Row.Table.Columns.Cast<datacolumn>().Any(x => x.ColumnName.Equals(columnNameToCheckDesignation, StringComparison.InvariantCultureIgnoreCase));
if (checkDesignation)
{
// Property available
lblDesignation.Text = (DataBinder.Eval(e.Row.DataItem, "Designation")).ToString();
}
else
{
lblDesignation.Visible = false;
}
//Changing color of the Pivot Data
if (Convert.ToInt32(lblRoleNo.Text.ToString()) == 2)
{
e.Row.BackColor = System.Drawing.Color.GreenYellow;
}
if (Convert.ToInt32(lblRoleNo.Text.ToString()) == 3)
{
e.Row.BackColor = System.Drawing.Color.Cyan;
}
if (Convert.ToInt32(lblRoleNo.Text.ToString()) == 4)
{
e.Row.BackColor = System.Drawing.Color.Orange;
}
if (Convert.ToInt32(lblRoleNo.Text.ToString()) == 5)
{
e.Row.BackColor = System.Drawing.Color.Pink;
}
}</datacolumn></datacolumn></datacolumn></datacolumn></datacolumn></datacolumn></datacolumn></datacolumn></datacolumn></datacolumn></datacolumn></datacolumn>
this code provide you to hide particular cell from code behind if the value is blank...
this code provide you to hide particular cell from code behind if the value is blank...
Protected Sub gvCoreUtilization_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles gvCoreUtilization.RowDataBound
Try
If e.Row.RowType = DataControlRowType.DataRow Then
Dim olblRoleID As New Label
Dim olblSupervisorName As New Label
Dim olblUserECode As New Label
Dim olblUserName As New Label
Dim olblDesignation As New Label
Dim olblLDTraining As New Label
Dim olblNonProduction As New Label
Dim olblProcessSupport As New Label
Dim olblProcessTraining As New Label
Dim olblProduction As New Label
Dim olblSystemDowntime As New Label
Dim olblGrandTotal As New Label
olblRoleID = CType(e.Row.FindControl("lblRoleID"), Label)
olblSupervisorName = CType(e.Row.FindControl("lblSupervisorName"), Label)
olblUserECode = CType(e.Row.FindControl("lblUserECode"), Label)
olblUserName = CType(e.Row.FindControl("lblUserName"), Label)
olblDesignation = CType(e.Row.FindControl("lblDesignation"), Label)
olblLDTraining = CType(e.Row.FindControl("lblLDTraining"), Label)
olblNonProduction = CType(e.Row.FindControl("lblNonProduction"), Label)
olblProcessSupport = CType(e.Row.FindControl("lblProcessSupport"), Label)
olblProcessTraining = CType(e.Row.FindControl("lblProcessTraining"), Label)
olblProduction = CType(e.Row.FindControl("lblProduction"), Label)
olblSystemDowntime = CType(e.Row.FindControl("lblSystemDowntime"), Label)
olblGrandTotal = CType(e.Row.FindControl("lblGrandTotal"), Label)
If CType(DataBinder.Eval(e.Row.DataItem, "RoleId"), String) = "" Then
olblRoleID.Visible = False
Else
olblRoleID.Text = DataBinder.Eval(e.Row.DataItem, "RoleId")
End If
If CType(DataBinder.Eval(e.Row.DataItem, "SupervisorName"), String) = "" Then
olblSupervisorName.Visible = False
Else
olblSupervisorName.Text = DataBinder.Eval(e.Row.DataItem, "SupervisorName")
End If
If CType(DataBinder.Eval(e.Row.DataItem, "UserECode"), String) = "" Then
olblUserECode.Visible = False
Else
olblUserECode.Text = DataBinder.Eval(e.Row.DataItem, "UserECode")
End If
If CType(DataBinder.Eval(e.Row.DataItem, "UserName"), String) = "" Then
olblUserName.Visible = False
Else
olblUserName.Text = DataBinder.Eval(e.Row.DataItem, "UserName")
End If
If CType(DataBinder.Eval(e.Row.DataItem, "Designation"), String) = "" Then
olblDesignation.Visible = False
Else
olblDesignation.Text = DataBinder.Eval(e.Row.DataItem, "Designation")
End If
If CType(DataBinder.Eval(e.Row.DataItem, "L & D Training"), String) = "" Then
olblLDTraining.Visible = False
Else
olblLDTraining.Text = DataBinder.Eval(e.Row.DataItem, "L & D Training")
End If
If CType(DataBinder.Eval(e.Row.DataItem, "Non Production"), String) = "" Then
olblNonProduction.Visible = False
Else
olblNonProduction.Text = DataBinder.Eval(e.Row.DataItem, "Non Production")
End If
If CType(DataBinder.Eval(e.Row.DataItem, "Process Support"), String) = "" Then
olblProcessSupport.Visible = False
Else
olblProcessSupport.Text = DataBinder.Eval(e.Row.DataItem, "Process Support")
End If
If CType(DataBinder.Eval(e.Row.DataItem, "Process Training"), String) = "" Then
olblProcessTraining.Visible = False
Else
olblProcessTraining.Text = DataBinder.Eval(e.Row.DataItem, "Process Training")
End If
If CType(DataBinder.Eval(e.Row.DataItem, "Production"), String) = "" Then
olblProduction.Visible = False
Else
olblProduction.Text = DataBinder.Eval(e.Row.DataItem, "Production")
End If
If CType(DataBinder.Eval(e.Row.DataItem, "System Downtime"), String) = "" Then
olblSystemDowntime.Visible = False
Else
olblSystemDowntime.Text = DataBinder.Eval(e.Row.DataItem, "System Downtime")
End If
If CType(DataBinder.Eval(e.Row.DataItem, "Grand Total"), String) = "" Then
olblGrandTotal.Visible = False
Else
olblGrandTotal.Text = DataBinder.Eval(e.Row.DataItem, "Grand Total")
End If
End If
Catch ex As Exception
General.LogException(ex)
End Try
End Sub
And if you want to hide entire column in grid please follow below step
1) Create View state property on page for every column
And if you want to hide entire column in grid please follow below step
1) Create View state property on page for every column
Property RoleId() As boolen
Get
If IsNothing(Me.ViewState("RoleId")) Then Me.ViewState("RoleId") = false
Return CType(Me.ViewState("RoleId"), Boolean)
End Get
Set(ByVal value As Boolean)
Me.ViewState("RoleId") = value
End Set
End Property
2) Loop throw Data-set for every column for each row and check value exist or not and set this property ,finally you have property with value true or false and you can find which column need to display in grid.
3)then you can easily hide column of grid.
2) Loop throw Data-set for every column for each row and check value exist or not and set this property ,finally you have property with value true or false and you can find which column need to display in grid.
3)then you can easily hide column of grid.
if Me.RoleId= True then
'Write code to Display
else
'Write code to Hide
end if