QA@IT
«質問へ戻る

追加させて頂きました。

2
本文
         <br />
         <asp:Button ID="Button3" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="検索" />
         <br />
-        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames="cookID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
+        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames=ID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
             <Columns>
-                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="result.aspx?cookID={0}" HeaderText="詳細" NavigateUrl="~/result.aspx" Text="詳細" />
+                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="result.aspx?ID={0}" HeaderText="詳細" NavigateUrl="~/result.aspx" Text="詳細" />
                 <asp:BoundField DataField="name_jp" HeaderText="料理名" SortExpression="name" />
                 <asp:BoundField DataField="price" HeaderText="値段" SortExpression="price" />
-                <asp:CheckBoxField DataField="food1" HeaderText="鶏" SortExpression="f1" />
-                <asp:CheckBoxField DataField="food2" HeaderText="牛" SortExpression="f2" />
-                <asp:CheckBoxField DataField="food3" HeaderText="豚" SortExpression="f3" />
+                <asp:CheckBoxField DataField="f1" HeaderText="鶏" SortExpression="f1" />
+                <asp:CheckBoxField DataField="f2" HeaderText="牛" SortExpression="f2" />
+                <asp:CheckBoxField DataField="f3" HeaderText="豚" SortExpression="f3" />
             </Columns>
             <EmptyDataTemplate>
                 <asp:Label ID="Label4" runat="server" Text="該当するデータがありません。&lt;br&gt;抽出条件を指定してから「検索」ボタンをクリックしてください。"></asp:Label>

checkboxと一致しないgridviewの行を表示する方法

最近、勉強をし始めたばかりのプログラミング初心者です。

開発環境:Visual Studio 2015
データソース:SQL Server localDB

《テーブル詳細》

CREATE TABLE [dbo].[menu] (
    [ID]      INT            IDENTITY (1, 1) NOT NULL,
    [name] NVARCHAR (50) NOT NULL,
    [price]       INT         NOT NULL,
    [f1]       BIT             NULL,
    [f2]       BIT             NULL,
    [f3]       BIT            NULL,

    PRIMARY KEY CLUSTERED ([ID] ASC),
);

《Visual Studio画面》
ckb1□ ckb2□ ckb3□
=====gridview=====

===============
[検索]

《やりたいこと》
ckb1をチェックして検索をおすと、ckb1のものを"含まない"データをGridviewで表示させたいです。
ckb1とf1,ckbとf2,ckb3とf3を同じ項目として一致させ
ckb1つまり「f1がtrueになっているデータ」を排除したものを表示させたいです。
もしckb1とckb2がどちらもtrueになっていたら、
「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。

※修正※ システムの目的として、[f1][f2][f3]についてtrueでもfalseでもデータとして登録できるようにしておきたいので、NOT NULLではなくNULLに再度修正させていただきました。やはり、このBITをNULLにするのは、まずいのでしょうか?

HTMLはこのようになっております。

<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="ssa.aspx.vb" Inherits="App.ssa" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
     <asp:Label ID="Label2" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="●料理名"></asp:Label>
        <br />
        <asp:TextBox ID="TextBox1" runat="server" Width="321px"></asp:TextBox>
        <br />
        <asp:Label ID="Label3" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="●好きなものは"></asp:Label>
        <br />
        <asp:CheckBox ID="CheckBox1" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="鶏" />
        <asp:CheckBox ID="CheckBox2" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="牛" />
        <asp:CheckBox ID="CheckBox3" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="豚" />
        <br />
        <asp:Button ID="Button3" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="検索" />
        <br />
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames=ID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
            <Columns>
                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="result.aspx?ID={0}" HeaderText="詳細" NavigateUrl="~/result.aspx" Text="詳細" />
                <asp:BoundField DataField="name_jp" HeaderText="料理名" SortExpression="name" />
                <asp:BoundField DataField="price" HeaderText="値段" SortExpression="price" />
                <asp:CheckBoxField DataField="f1" HeaderText="鶏" SortExpression="f1" />
                <asp:CheckBoxField DataField="f2" HeaderText="牛" SortExpression="f2" />
                <asp:CheckBoxField DataField="f3" HeaderText="豚" SortExpression="f3" />
            </Columns>
            <EmptyDataTemplate>
                <asp:Label ID="Label4" runat="server" Text="該当するデータがありません。&lt;br&gt;抽出条件を指定してから「検索」ボタンをクリックしてください。"></asp:Label>
            </EmptyDataTemplate>
            <FooterStyle BackColor="White" ForeColor="#333333" />
            <HeaderStyle BackColor="#336666" Font-Bold="True" ForeColor="White" />
            <PagerStyle BackColor="#336666" ForeColor="White" HorizontalAlign="Center" />
            <RowStyle BackColor="White" ForeColor="#333333" />
            <SelectedRowStyle BackColor="#339966" Font-Bold="True" ForeColor="White" />
            <SortedAscendingCellStyle BackColor="#F7F7F7" />
            <SortedAscendingHeaderStyle BackColor="#487575" />
            <SortedDescendingCellStyle BackColor="#E5E5E5" />
            <SortedDescendingHeaderStyle BackColor="#275353" />
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>" SelectCommand="SELECT ID, name,price, f1, f2, f3 FROM menu2 WHERE (name LIKE '%' + name + '%')">
            <SelectParameters>
        <asp:ControlParameter ControlID="TextBox1" DefaultValue="%" Name="name" PropertyName="Text" Type="String" />
            </SelectParameters>
        </asp:SqlDataSource>
        <br />
         <asp:Button ID="Button1" runat="server" Text="最初に戻る" Font-Names="メイリオ" Font-Size="Large" />

    </div>
    </form>
</body>
</html>

また.aspはこのようになっております。


Public Class seachlist
    Inherits System.Web.UI.Page
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    End Sub

    Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        GridView1.DataSourceID = ""
        GridView1.DataSource = SqlDataSource1
        GridView1.DataBind()
    End Sub

    Protected Sub GridView1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles GridView1.SelectedIndexChanged
    End Sub

    Protected Sub SqlDataSource1_Selecting(sender As Object, e As SqlDataSourceSelectingEventArgs) Handles SqlDataSource1.Selecting
    End Sub
End Class

SurferOnWww様、大変申し訳ございません。
無視をしていたわけではなく、勘違いをしておりました。
完全というと、こういうことでしょうか。
本当に、分かっておらず…
質問に答えてくださっているのに、SurferOnWww様に
不快な気持ちを抱かせてしまい
申し訳ございません。

最近、勉強をし始めたばかりのプログラミング初心者です。

開発環境:Visual Studio 2015
データソース:SQL Server localDB

《テーブル詳細》
```Transact-SQL
CREATE TABLE [dbo].[menu] (
    [ID]      INT            IDENTITY (1, 1) NOT NULL,
    [name] NVARCHAR (50) NOT NULL,
    [price]       INT         NOT NULL,
    [f1]       BIT             NULL,
    [f2]       BIT             NULL,
    [f3]       BIT            NULL,

    PRIMARY KEY CLUSTERED ([ID] ASC),
);
```
《Visual Studio画面》
ckb1□ ckb2□ ckb3□ 
=====gridview=====

===============
[検索]

《やりたいこと》
ckb1をチェックして検索をおすと、ckb1のものを"含まない"データをGridviewで表示させたいです。
ckb1とf1,ckbとf2,ckb3とf3を同じ項目として一致させ
ckb1つまり「f1がtrueになっているデータ」を排除したものを表示させたいです。
もしckb1とckb2がどちらもtrueになっていたら、
「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。

**※修正※ システムの目的として、[f1][f2][f3]についてtrueでもfalseでもデータとして登録できるようにしておきたいので、NOT NULLではなくNULLに再度修正させていただきました。やはり、このBITをNULLにするのは、まずいのでしょうか?**


HTMLはこのようになっております。
```html
<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="ssa.aspx.vb" Inherits="App.ssa" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
     <asp:Label ID="Label2" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="●料理名"></asp:Label>
        <br />
        <asp:TextBox ID="TextBox1" runat="server" Width="321px"></asp:TextBox>
        <br />
        <asp:Label ID="Label3" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="●好きなものは"></asp:Label>
        <br />
        <asp:CheckBox ID="CheckBox1" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="鶏" />
        <asp:CheckBox ID="CheckBox2" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="牛" />
        <asp:CheckBox ID="CheckBox3" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="豚" />
        <br />
        <asp:Button ID="Button3" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="検索" />
        <br />
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames=ID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
            <Columns>
                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="result.aspx?ID={0}" HeaderText="詳細" NavigateUrl="~/result.aspx" Text="詳細" />
                <asp:BoundField DataField="name_jp" HeaderText="料理名" SortExpression="name" />
                <asp:BoundField DataField="price" HeaderText="値段" SortExpression="price" />
                <asp:CheckBoxField DataField="f1" HeaderText="鶏" SortExpression="f1" />
                <asp:CheckBoxField DataField="f2" HeaderText="牛" SortExpression="f2" />
                <asp:CheckBoxField DataField="f3" HeaderText="豚" SortExpression="f3" />
            </Columns>
            <EmptyDataTemplate>
                <asp:Label ID="Label4" runat="server" Text="該当するデータがありません。&lt;br&gt;抽出条件を指定してから「検索」ボタンをクリックしてください。"></asp:Label>
            </EmptyDataTemplate>
            <FooterStyle BackColor="White" ForeColor="#333333" />
            <HeaderStyle BackColor="#336666" Font-Bold="True" ForeColor="White" />
            <PagerStyle BackColor="#336666" ForeColor="White" HorizontalAlign="Center" />
            <RowStyle BackColor="White" ForeColor="#333333" />
            <SelectedRowStyle BackColor="#339966" Font-Bold="True" ForeColor="White" />
            <SortedAscendingCellStyle BackColor="#F7F7F7" />
            <SortedAscendingHeaderStyle BackColor="#487575" />
            <SortedDescendingCellStyle BackColor="#E5E5E5" />
            <SortedDescendingHeaderStyle BackColor="#275353" />
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>" SelectCommand="SELECT ID, name,price, f1, f2, f3 FROM menu2 WHERE (name LIKE '%' + name + '%')">
            <SelectParameters>
        <asp:ControlParameter ControlID="TextBox1" DefaultValue="%" Name="name" PropertyName="Text" Type="String" />
            </SelectParameters>
        </asp:SqlDataSource>
        <br />
         <asp:Button ID="Button1" runat="server" Text="最初に戻る" Font-Names="メイリオ" Font-Size="Large" />
    
    </div>
    </form>
</body>
</html>

```
また.aspはこのようになっております。

```visualstudio

Public Class seachlist
    Inherits System.Web.UI.Page
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    End Sub

    Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        GridView1.DataSourceID = ""
        GridView1.DataSource = SqlDataSource1
        GridView1.DataBind()
    End Sub

    Protected Sub GridView1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles GridView1.SelectedIndexChanged
    End Sub

    Protected Sub SqlDataSource1_Selecting(sender As Object, e As SqlDataSourceSelectingEventArgs) Handles SqlDataSource1.Selecting
    End Sub
End Class
```
SurferOnWww様、大変申し訳ございません。
無視をしていたわけではなく、勘違いをしておりました。
完全というと、こういうことでしょうか。
本当に、分かっておらず…
質問に答えてくださっているのに、SurferOnWww様に
不快な気持ちを抱かせてしまい
申し訳ございません。

追加させて頂きました。

2
本文
 **※修正※ システムの目的として、[f1][f2][f3]についてtrueでもfalseでもデータとして登録できるようにしておきたいので、NOT NULLではなくNULLに再度修正させていただきました。やはり、このBITをNULLにするのは、まずいのでしょうか?**
 
 
-GridViewはこのようになっております。
+HTMLはこのようになっております。
 ```html
-<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames="ID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
+<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="ssa.aspx.vb" Inherits="App.ssa" %>
+
+<!DOCTYPE html>
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head runat="server">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+    <title></title>
+</head>
+<body>
+    <form id="form1" runat="server">
+    <div>
+     <asp:Label ID="Label2" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="●料理名"></asp:Label>
+        <br />
+        <asp:TextBox ID="TextBox1" runat="server" Width="321px"></asp:TextBox>
+        <br />
+        <asp:Label ID="Label3" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="●好きなものは"></asp:Label>
+        <br />
+        <asp:CheckBox ID="CheckBox1" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="鶏" />
+        <asp:CheckBox ID="CheckBox2" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="牛" />
+        <asp:CheckBox ID="CheckBox3" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="豚" />
+        <br />
+        <asp:Button ID="Button3" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="検索" />
+        <br />
+        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames="cookID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
             <Columns>
-                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="ssa.aspx?ID={0}" HeaderText="詳細" NavigateUrl="~/ssa.aspx" Text="詳細" />
-                <asp:BoundField DataField="name" HeaderText="名前" SortExpression="name" />
+                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="result.aspx?cookID={0}" HeaderText="詳細" NavigateUrl="~/result.aspx" Text="詳細" />
+                <asp:BoundField DataField="name_jp" HeaderText="料理名" SortExpression="name" />
                 <asp:BoundField DataField="price" HeaderText="値段" SortExpression="price" />
-                <asp:CheckBoxField DataField="f1" HeaderText="鶏" SortExpression="f1" />
-                <asp:CheckBoxField DataField="f2" HeaderText="牛" SortExpression="f2" />
-                <asp:CheckBoxField DataField="f3" HeaderText="豚" SortExpression="f3" />
+                <asp:CheckBoxField DataField="food1" HeaderText="鶏" SortExpression="f1" />
+                <asp:CheckBoxField DataField="food2" HeaderText="牛" SortExpression="f2" />
+                <asp:CheckBoxField DataField="food3" HeaderText="豚" SortExpression="f3" />
             </Columns>
+            <EmptyDataTemplate>
+                <asp:Label ID="Label4" runat="server" Text="該当するデータがありません。&lt;br&gt;抽出条件を指定してから「検索」ボタンをクリックしてください。"></asp:Label>
+            </EmptyDataTemplate>
+            <FooterStyle BackColor="White" ForeColor="#333333" />
+            <HeaderStyle BackColor="#336666" Font-Bold="True" ForeColor="White" />
+            <PagerStyle BackColor="#336666" ForeColor="White" HorizontalAlign="Center" />
+            <RowStyle BackColor="White" ForeColor="#333333" />
+            <SelectedRowStyle BackColor="#339966" Font-Bold="True" ForeColor="White" />
+            <SortedAscendingCellStyle BackColor="#F7F7F7" />
+            <SortedAscendingHeaderStyle BackColor="#487575" />
+            <SortedDescendingCellStyle BackColor="#E5E5E5" />
+            <SortedDescendingHeaderStyle BackColor="#275353" />
         </asp:GridView>
-            <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>" SelectCommand="SELECT ID, name, price, f1, f2, f3 FROM menu WHERE (f1 <> @f1) OR (f2 <> @f2) OR (f3 <> @f3)">
+        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>" SelectCommand="SELECT ID, name,price, f1, f2, f3 FROM menu2 WHERE (name LIKE '%' + name + '%')">
             <SelectParameters>
-                <asp:ControlParameter ControlID="TextBox1" DefaultValue="%" Name="name" PropertyName="Text" Type="String" />
-                <asp:ControlParameter ControlID="CheckBox1" DefaultValue="" Name="f1" PropertyName="Checked" />
-                <asp:ControlParameter ControlID="CheckBox2" DefaultValue="" Name="f2" PropertyName="Checked" />
-                <asp:ControlParameter ControlID="CheckBox3" DefaultValue="" Name="f3" PropertyName="Checked" />
+        <asp:ControlParameter ControlID="TextBox1" DefaultValue="%" Name="name" PropertyName="Text" Type="String" />
             </SelectParameters>
         </asp:SqlDataSource>
+        <br />
+         <asp:Button ID="Button1" runat="server" Text="最初に戻る" Font-Names="メイリオ" Font-Size="Large" />
+    
+    </div>
     </form>
 </body>
 </html>
+
 ```
 また.aspはこのようになっております。
 

checkboxと一致しないgridviewの行を表示する方法

最近、勉強をし始めたばかりのプログラミング初心者です。

開発環境:Visual Studio 2015
データソース:SQL Server localDB

《テーブル詳細》

CREATE TABLE [dbo].[menu] (
    [ID]      INT            IDENTITY (1, 1) NOT NULL,
    [name] NVARCHAR (50) NOT NULL,
    [price]       INT         NOT NULL,
    [f1]       BIT             NULL,
    [f2]       BIT             NULL,
    [f3]       BIT            NULL,

    PRIMARY KEY CLUSTERED ([ID] ASC),
);

《Visual Studio画面》
ckb1□ ckb2□ ckb3□
=====gridview=====

===============
[検索]

《やりたいこと》
ckb1をチェックして検索をおすと、ckb1のものを"含まない"データをGridviewで表示させたいです。
ckb1とf1,ckbとf2,ckb3とf3を同じ項目として一致させ
ckb1つまり「f1がtrueになっているデータ」を排除したものを表示させたいです。
もしckb1とckb2がどちらもtrueになっていたら、
「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。

※修正※ システムの目的として、[f1][f2][f3]についてtrueでもfalseでもデータとして登録できるようにしておきたいので、NOT NULLではなくNULLに再度修正させていただきました。やはり、このBITをNULLにするのは、まずいのでしょうか?

HTMLはこのようになっております。

<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="ssa.aspx.vb" Inherits="App.ssa" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
     <asp:Label ID="Label2" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="●料理名"></asp:Label>
        <br />
        <asp:TextBox ID="TextBox1" runat="server" Width="321px"></asp:TextBox>
        <br />
        <asp:Label ID="Label3" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="●好きなものは"></asp:Label>
        <br />
        <asp:CheckBox ID="CheckBox1" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="鶏" />
        <asp:CheckBox ID="CheckBox2" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="牛" />
        <asp:CheckBox ID="CheckBox3" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="豚" />
        <br />
        <asp:Button ID="Button3" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="検索" />
        <br />
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames="cookID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
            <Columns>
                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="result.aspx?cookID={0}" HeaderText="詳細" NavigateUrl="~/result.aspx" Text="詳細" />
                <asp:BoundField DataField="name_jp" HeaderText="料理名" SortExpression="name" />
                <asp:BoundField DataField="price" HeaderText="値段" SortExpression="price" />
                <asp:CheckBoxField DataField="food1" HeaderText="鶏" SortExpression="f1" />
                <asp:CheckBoxField DataField="food2" HeaderText="牛" SortExpression="f2" />
                <asp:CheckBoxField DataField="food3" HeaderText="豚" SortExpression="f3" />
            </Columns>
            <EmptyDataTemplate>
                <asp:Label ID="Label4" runat="server" Text="該当するデータがありません。&lt;br&gt;抽出条件を指定してから「検索」ボタンをクリックしてください。"></asp:Label>
            </EmptyDataTemplate>
            <FooterStyle BackColor="White" ForeColor="#333333" />
            <HeaderStyle BackColor="#336666" Font-Bold="True" ForeColor="White" />
            <PagerStyle BackColor="#336666" ForeColor="White" HorizontalAlign="Center" />
            <RowStyle BackColor="White" ForeColor="#333333" />
            <SelectedRowStyle BackColor="#339966" Font-Bold="True" ForeColor="White" />
            <SortedAscendingCellStyle BackColor="#F7F7F7" />
            <SortedAscendingHeaderStyle BackColor="#487575" />
            <SortedDescendingCellStyle BackColor="#E5E5E5" />
            <SortedDescendingHeaderStyle BackColor="#275353" />
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>" SelectCommand="SELECT ID, name,price, f1, f2, f3 FROM menu2 WHERE (name LIKE '%' + name + '%')">
            <SelectParameters>
        <asp:ControlParameter ControlID="TextBox1" DefaultValue="%" Name="name" PropertyName="Text" Type="String" />
            </SelectParameters>
        </asp:SqlDataSource>
        <br />
         <asp:Button ID="Button1" runat="server" Text="最初に戻る" Font-Names="メイリオ" Font-Size="Large" />

    </div>
    </form>
</body>
</html>

また.aspはこのようになっております。


Public Class seachlist
    Inherits System.Web.UI.Page
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    End Sub

    Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        GridView1.DataSourceID = ""
        GridView1.DataSource = SqlDataSource1
        GridView1.DataBind()
    End Sub

    Protected Sub GridView1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles GridView1.SelectedIndexChanged
    End Sub

    Protected Sub SqlDataSource1_Selecting(sender As Object, e As SqlDataSourceSelectingEventArgs) Handles SqlDataSource1.Selecting
    End Sub
End Class

SurferOnWww様、大変申し訳ございません。
無視をしていたわけではなく、勘違いをしておりました。
完全というと、こういうことでしょうか。
本当に、分かっておらず…
質問に答えてくださっているのに、SurferOnWww様に
不快な気持ちを抱かせてしまい
申し訳ございません。

最近、勉強をし始めたばかりのプログラミング初心者です。

開発環境:Visual Studio 2015
データソース:SQL Server localDB

《テーブル詳細》
```Transact-SQL
CREATE TABLE [dbo].[menu] (
    [ID]      INT            IDENTITY (1, 1) NOT NULL,
    [name] NVARCHAR (50) NOT NULL,
    [price]       INT         NOT NULL,
    [f1]       BIT             NULL,
    [f2]       BIT             NULL,
    [f3]       BIT            NULL,

    PRIMARY KEY CLUSTERED ([ID] ASC),
);
```
《Visual Studio画面》
ckb1□ ckb2□ ckb3□ 
=====gridview=====

===============
[検索]

《やりたいこと》
ckb1をチェックして検索をおすと、ckb1のものを"含まない"データをGridviewで表示させたいです。
ckb1とf1,ckbとf2,ckb3とf3を同じ項目として一致させ
ckb1つまり「f1がtrueになっているデータ」を排除したものを表示させたいです。
もしckb1とckb2がどちらもtrueになっていたら、
「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。

**※修正※ システムの目的として、[f1][f2][f3]についてtrueでもfalseでもデータとして登録できるようにしておきたいので、NOT NULLではなくNULLに再度修正させていただきました。やはり、このBITをNULLにするのは、まずいのでしょうか?**


HTMLはこのようになっております。
```html
<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="ssa.aspx.vb" Inherits="App.ssa" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
     <asp:Label ID="Label2" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="●料理名"></asp:Label>
        <br />
        <asp:TextBox ID="TextBox1" runat="server" Width="321px"></asp:TextBox>
        <br />
        <asp:Label ID="Label3" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="●好きなものは"></asp:Label>
        <br />
        <asp:CheckBox ID="CheckBox1" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="鶏" />
        <asp:CheckBox ID="CheckBox2" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="牛" />
        <asp:CheckBox ID="CheckBox3" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="豚" />
        <br />
        <asp:Button ID="Button3" runat="server" Font-Names="メイリオ" Font-Size="Large" Text="検索" />
        <br />
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames="cookID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
            <Columns>
                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="result.aspx?cookID={0}" HeaderText="詳細" NavigateUrl="~/result.aspx" Text="詳細" />
                <asp:BoundField DataField="name_jp" HeaderText="料理名" SortExpression="name" />
                <asp:BoundField DataField="price" HeaderText="値段" SortExpression="price" />
                <asp:CheckBoxField DataField="food1" HeaderText="鶏" SortExpression="f1" />
                <asp:CheckBoxField DataField="food2" HeaderText="牛" SortExpression="f2" />
                <asp:CheckBoxField DataField="food3" HeaderText="豚" SortExpression="f3" />
            </Columns>
            <EmptyDataTemplate>
                <asp:Label ID="Label4" runat="server" Text="該当するデータがありません。&lt;br&gt;抽出条件を指定してから「検索」ボタンをクリックしてください。"></asp:Label>
            </EmptyDataTemplate>
            <FooterStyle BackColor="White" ForeColor="#333333" />
            <HeaderStyle BackColor="#336666" Font-Bold="True" ForeColor="White" />
            <PagerStyle BackColor="#336666" ForeColor="White" HorizontalAlign="Center" />
            <RowStyle BackColor="White" ForeColor="#333333" />
            <SelectedRowStyle BackColor="#339966" Font-Bold="True" ForeColor="White" />
            <SortedAscendingCellStyle BackColor="#F7F7F7" />
            <SortedAscendingHeaderStyle BackColor="#487575" />
            <SortedDescendingCellStyle BackColor="#E5E5E5" />
            <SortedDescendingHeaderStyle BackColor="#275353" />
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>" SelectCommand="SELECT ID, name,price, f1, f2, f3 FROM menu2 WHERE (name LIKE '%' + name + '%')">
            <SelectParameters>
        <asp:ControlParameter ControlID="TextBox1" DefaultValue="%" Name="name" PropertyName="Text" Type="String" />
            </SelectParameters>
        </asp:SqlDataSource>
        <br />
         <asp:Button ID="Button1" runat="server" Text="最初に戻る" Font-Names="メイリオ" Font-Size="Large" />
    
    </div>
    </form>
</body>
</html>

```
また.aspはこのようになっております。

```visualstudio

Public Class seachlist
    Inherits System.Web.UI.Page
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    End Sub

    Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        GridView1.DataSourceID = ""
        GridView1.DataSource = SqlDataSource1
        GridView1.DataBind()
    End Sub

    Protected Sub GridView1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles GridView1.SelectedIndexChanged
    End Sub

    Protected Sub SqlDataSource1_Selecting(sender As Object, e As SqlDataSourceSelectingEventArgs) Handles SqlDataSource1.Selecting
    End Sub
End Class
```
SurferOnWww様、大変申し訳ございません。
無視をしていたわけではなく、勘違いをしておりました。
完全というと、こういうことでしょうか。
本当に、分かっておらず…
質問に答えてくださっているのに、SurferOnWww様に
不快な気持ちを抱かせてしまい
申し訳ございません。

追加させて頂きました。

2
本文
     [ID]      INT            IDENTITY (1, 1) NOT NULL,
     [name] NVARCHAR (50) NOT NULL,
     [price]       INT         NOT NULL,
-    [f1]       BIT            NOT NULL,
-    [f2]       BIT            NOT NULL,
-    [f3]       BIT            NOT NULL,
+    [f1]       BIT             NULL,
+    [f2]       BIT             NULL,
+    [f3]       BIT            NULL,
 
     PRIMARY KEY CLUSTERED ([ID] ASC),
 );
 もしckb1とckb2がどちらもtrueになっていたら、
 「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。
 
+**※修正※ システムの目的として、[f1][f2][f3]についてtrueでもfalseでもデータとして登録できるようにしておきたいので、NOT NULLではなくNULLに再度修正させていただきました。やはり、このBITをNULLにするのは、まずいのでしょうか?**
 
+
 GridViewはこのようになっております。
 ```html
 <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames="ID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
     </form>
 </body>
 </html>
+```
+また.aspはこのようになっております。
+
+```visualstudio
+
+Public Class seachlist
+    Inherits System.Web.UI.Page
+    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
+    End Sub
+
+    Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
+        GridView1.DataSourceID = ""
+        GridView1.DataSource = SqlDataSource1
+        GridView1.DataBind()
+    End Sub
+
+    Protected Sub GridView1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles GridView1.SelectedIndexChanged
+    End Sub
+
+    Protected Sub SqlDataSource1_Selecting(sender As Object, e As SqlDataSourceSelectingEventArgs) Handles SqlDataSource1.Selecting
+    End Sub
+End Class
 ```
 SurferOnWww様、大変申し訳ございません。
 無視をしていたわけではなく、勘違いをしておりました。

checkboxと一致しないgridviewの行を表示する方法

最近、勉強をし始めたばかりのプログラミング初心者です。

開発環境:Visual Studio 2015
データソース:SQL Server localDB

《テーブル詳細》

CREATE TABLE [dbo].[menu] (
    [ID]      INT            IDENTITY (1, 1) NOT NULL,
    [name] NVARCHAR (50) NOT NULL,
    [price]       INT         NOT NULL,
    [f1]       BIT             NULL,
    [f2]       BIT             NULL,
    [f3]       BIT            NULL,

    PRIMARY KEY CLUSTERED ([ID] ASC),
);

《Visual Studio画面》
ckb1□ ckb2□ ckb3□
=====gridview=====

===============
[検索]

《やりたいこと》
ckb1をチェックして検索をおすと、ckb1のものを"含まない"データをGridviewで表示させたいです。
ckb1とf1,ckbとf2,ckb3とf3を同じ項目として一致させ
ckb1つまり「f1がtrueになっているデータ」を排除したものを表示させたいです。
もしckb1とckb2がどちらもtrueになっていたら、
「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。

※修正※ システムの目的として、[f1][f2][f3]についてtrueでもfalseでもデータとして登録できるようにしておきたいので、NOT NULLではなくNULLに再度修正させていただきました。やはり、このBITをNULLにするのは、まずいのでしょうか?

GridViewはこのようになっております。

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames="ID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
            <Columns>
                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="ssa.aspx?ID={0}" HeaderText="詳細" NavigateUrl="~/ssa.aspx" Text="詳細" />
                <asp:BoundField DataField="name" HeaderText="名前" SortExpression="name" />
                <asp:BoundField DataField="price" HeaderText="値段" SortExpression="price" />
                <asp:CheckBoxField DataField="f1" HeaderText="鶏" SortExpression="f1" />
                <asp:CheckBoxField DataField="f2" HeaderText="牛" SortExpression="f2" />
                <asp:CheckBoxField DataField="f3" HeaderText="豚" SortExpression="f3" />
            </Columns>
        </asp:GridView>
            <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>" SelectCommand="SELECT ID, name, price, f1, f2, f3 FROM menu WHERE (f1 <> @f1) OR (f2 <> @f2) OR (f3 <> @f3)">
            <SelectParameters>
                <asp:ControlParameter ControlID="TextBox1" DefaultValue="%" Name="name" PropertyName="Text" Type="String" />
                <asp:ControlParameter ControlID="CheckBox1" DefaultValue="" Name="f1" PropertyName="Checked" />
                <asp:ControlParameter ControlID="CheckBox2" DefaultValue="" Name="f2" PropertyName="Checked" />
                <asp:ControlParameter ControlID="CheckBox3" DefaultValue="" Name="f3" PropertyName="Checked" />
            </SelectParameters>
        </asp:SqlDataSource>
    </form>
</body>
</html>

また.aspはこのようになっております。


Public Class seachlist
    Inherits System.Web.UI.Page
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    End Sub

    Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        GridView1.DataSourceID = ""
        GridView1.DataSource = SqlDataSource1
        GridView1.DataBind()
    End Sub

    Protected Sub GridView1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles GridView1.SelectedIndexChanged
    End Sub

    Protected Sub SqlDataSource1_Selecting(sender As Object, e As SqlDataSourceSelectingEventArgs) Handles SqlDataSource1.Selecting
    End Sub
End Class

SurferOnWww様、大変申し訳ございません。
無視をしていたわけではなく、勘違いをしておりました。
完全というと、こういうことでしょうか。
本当に、分かっておらず…
質問に答えてくださっているのに、SurferOnWww様に
不快な気持ちを抱かせてしまい
申し訳ございません。

最近、勉強をし始めたばかりのプログラミング初心者です。

開発環境:Visual Studio 2015
データソース:SQL Server localDB

《テーブル詳細》
```Transact-SQL
CREATE TABLE [dbo].[menu] (
    [ID]      INT            IDENTITY (1, 1) NOT NULL,
    [name] NVARCHAR (50) NOT NULL,
    [price]       INT         NOT NULL,
    [f1]       BIT             NULL,
    [f2]       BIT             NULL,
    [f3]       BIT            NULL,

    PRIMARY KEY CLUSTERED ([ID] ASC),
);
```
《Visual Studio画面》
ckb1□ ckb2□ ckb3□ 
=====gridview=====

===============
[検索]

《やりたいこと》
ckb1をチェックして検索をおすと、ckb1のものを"含まない"データをGridviewで表示させたいです。
ckb1とf1,ckbとf2,ckb3とf3を同じ項目として一致させ
ckb1つまり「f1がtrueになっているデータ」を排除したものを表示させたいです。
もしckb1とckb2がどちらもtrueになっていたら、
「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。

**※修正※ システムの目的として、[f1][f2][f3]についてtrueでもfalseでもデータとして登録できるようにしておきたいので、NOT NULLではなくNULLに再度修正させていただきました。やはり、このBITをNULLにするのは、まずいのでしょうか?**


GridViewはこのようになっております。
```html
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames="ID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
            <Columns>
                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="ssa.aspx?ID={0}" HeaderText="詳細" NavigateUrl="~/ssa.aspx" Text="詳細" />
                <asp:BoundField DataField="name" HeaderText="名前" SortExpression="name" />
                <asp:BoundField DataField="price" HeaderText="値段" SortExpression="price" />
                <asp:CheckBoxField DataField="f1" HeaderText="鶏" SortExpression="f1" />
                <asp:CheckBoxField DataField="f2" HeaderText="牛" SortExpression="f2" />
                <asp:CheckBoxField DataField="f3" HeaderText="豚" SortExpression="f3" />
            </Columns>
        </asp:GridView>
            <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>" SelectCommand="SELECT ID, name, price, f1, f2, f3 FROM menu WHERE (f1 <> @f1) OR (f2 <> @f2) OR (f3 <> @f3)">
            <SelectParameters>
                <asp:ControlParameter ControlID="TextBox1" DefaultValue="%" Name="name" PropertyName="Text" Type="String" />
                <asp:ControlParameter ControlID="CheckBox1" DefaultValue="" Name="f1" PropertyName="Checked" />
                <asp:ControlParameter ControlID="CheckBox2" DefaultValue="" Name="f2" PropertyName="Checked" />
                <asp:ControlParameter ControlID="CheckBox3" DefaultValue="" Name="f3" PropertyName="Checked" />
            </SelectParameters>
        </asp:SqlDataSource>
    </form>
</body>
</html>
```
また.aspはこのようになっております。

```visualstudio

Public Class seachlist
    Inherits System.Web.UI.Page
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    End Sub

    Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        GridView1.DataSourceID = ""
        GridView1.DataSource = SqlDataSource1
        GridView1.DataBind()
    End Sub

    Protected Sub GridView1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles GridView1.SelectedIndexChanged
    End Sub

    Protected Sub SqlDataSource1_Selecting(sender As Object, e As SqlDataSourceSelectingEventArgs) Handles SqlDataSource1.Selecting
    End Sub
End Class
```
SurferOnWww様、大変申し訳ございません。
無視をしていたわけではなく、勘違いをしておりました。
完全というと、こういうことでしょうか。
本当に、分かっておらず…
質問に答えてくださっているのに、SurferOnWww様に
不快な気持ちを抱かせてしまい
申し訳ございません。

追加させて頂きました。

2
本文
                 <asp:CheckBoxField DataField="f3" HeaderText="豚" SortExpression="f3" />
             </Columns>
         </asp:GridView>
-            <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>" SelectCommand="SELECT ID, name, price, f1, f2, f3 FROM menu WHERE (f1 &lt;&gt; @f1) OR (f2 = @f2) OR (f3 = @f3)">
+            <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>" SelectCommand="SELECT ID, name, price, f1, f2, f3 FROM menu WHERE (f1 <> @f1) OR (f2 <> @f2) OR (f3 <> @f3)">
             <SelectParameters>
                 <asp:ControlParameter ControlID="TextBox1" DefaultValue="%" Name="name" PropertyName="Text" Type="String" />
                 <asp:ControlParameter ControlID="CheckBox1" DefaultValue="" Name="f1" PropertyName="Checked" />

checkboxと一致しないgridviewの行を表示する方法

最近、勉強をし始めたばかりのプログラミング初心者です。

開発環境:Visual Studio 2015
データソース:SQL Server localDB

《テーブル詳細》

CREATE TABLE [dbo].[menu] (
    [ID]      INT            IDENTITY (1, 1) NOT NULL,
    [name] NVARCHAR (50) NOT NULL,
    [price]       INT         NOT NULL,
    [f1]       BIT            NOT NULL,
    [f2]       BIT            NOT NULL,
    [f3]       BIT            NOT NULL,

    PRIMARY KEY CLUSTERED ([ID] ASC),
);

《Visual Studio画面》
ckb1□ ckb2□ ckb3□
=====gridview=====

===============
[検索]

《やりたいこと》
ckb1をチェックして検索をおすと、ckb1のものを"含まない"データをGridviewで表示させたいです。
ckb1とf1,ckbとf2,ckb3とf3を同じ項目として一致させ
ckb1つまり「f1がtrueになっているデータ」を排除したものを表示させたいです。
もしckb1とckb2がどちらもtrueになっていたら、
「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。

GridViewはこのようになっております。

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames="ID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
            <Columns>
                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="ssa.aspx?ID={0}" HeaderText="詳細" NavigateUrl="~/ssa.aspx" Text="詳細" />
                <asp:BoundField DataField="name" HeaderText="名前" SortExpression="name" />
                <asp:BoundField DataField="price" HeaderText="値段" SortExpression="price" />
                <asp:CheckBoxField DataField="f1" HeaderText="鶏" SortExpression="f1" />
                <asp:CheckBoxField DataField="f2" HeaderText="牛" SortExpression="f2" />
                <asp:CheckBoxField DataField="f3" HeaderText="豚" SortExpression="f3" />
            </Columns>
        </asp:GridView>
            <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>" SelectCommand="SELECT ID, name, price, f1, f2, f3 FROM menu WHERE (f1 <> @f1) OR (f2 <> @f2) OR (f3 <> @f3)">
            <SelectParameters>
                <asp:ControlParameter ControlID="TextBox1" DefaultValue="%" Name="name" PropertyName="Text" Type="String" />
                <asp:ControlParameter ControlID="CheckBox1" DefaultValue="" Name="f1" PropertyName="Checked" />
                <asp:ControlParameter ControlID="CheckBox2" DefaultValue="" Name="f2" PropertyName="Checked" />
                <asp:ControlParameter ControlID="CheckBox3" DefaultValue="" Name="f3" PropertyName="Checked" />
            </SelectParameters>
        </asp:SqlDataSource>
    </form>
</body>
</html>

SurferOnWww様、大変申し訳ございません。
無視をしていたわけではなく、勘違いをしておりました。
完全というと、こういうことでしょうか。
本当に、分かっておらず…
質問に答えてくださっているのに、SurferOnWww様に
不快な気持ちを抱かせてしまい
申し訳ございません。

最近、勉強をし始めたばかりのプログラミング初心者です。

開発環境:Visual Studio 2015
データソース:SQL Server localDB

《テーブル詳細》
```Transact-SQL
CREATE TABLE [dbo].[menu] (
    [ID]      INT            IDENTITY (1, 1) NOT NULL,
    [name] NVARCHAR (50) NOT NULL,
    [price]       INT         NOT NULL,
    [f1]       BIT            NOT NULL,
    [f2]       BIT            NOT NULL,
    [f3]       BIT            NOT NULL,

    PRIMARY KEY CLUSTERED ([ID] ASC),
);
```
《Visual Studio画面》
ckb1□ ckb2□ ckb3□ 
=====gridview=====

===============
[検索]

《やりたいこと》
ckb1をチェックして検索をおすと、ckb1のものを"含まない"データをGridviewで表示させたいです。
ckb1とf1,ckbとf2,ckb3とf3を同じ項目として一致させ
ckb1つまり「f1がtrueになっているデータ」を排除したものを表示させたいです。
もしckb1とckb2がどちらもtrueになっていたら、
「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。


GridViewはこのようになっております。
```html
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames="ID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
            <Columns>
                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="ssa.aspx?ID={0}" HeaderText="詳細" NavigateUrl="~/ssa.aspx" Text="詳細" />
                <asp:BoundField DataField="name" HeaderText="名前" SortExpression="name" />
                <asp:BoundField DataField="price" HeaderText="値段" SortExpression="price" />
                <asp:CheckBoxField DataField="f1" HeaderText="鶏" SortExpression="f1" />
                <asp:CheckBoxField DataField="f2" HeaderText="牛" SortExpression="f2" />
                <asp:CheckBoxField DataField="f3" HeaderText="豚" SortExpression="f3" />
            </Columns>
        </asp:GridView>
            <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>" SelectCommand="SELECT ID, name, price, f1, f2, f3 FROM menu WHERE (f1 <> @f1) OR (f2 <> @f2) OR (f3 <> @f3)">
            <SelectParameters>
                <asp:ControlParameter ControlID="TextBox1" DefaultValue="%" Name="name" PropertyName="Text" Type="String" />
                <asp:ControlParameter ControlID="CheckBox1" DefaultValue="" Name="f1" PropertyName="Checked" />
                <asp:ControlParameter ControlID="CheckBox2" DefaultValue="" Name="f2" PropertyName="Checked" />
                <asp:ControlParameter ControlID="CheckBox3" DefaultValue="" Name="f3" PropertyName="Checked" />
            </SelectParameters>
        </asp:SqlDataSource>
    </form>
</body>
</html>
```
SurferOnWww様、大変申し訳ございません。
無視をしていたわけではなく、勘違いをしておりました。
完全というと、こういうことでしょうか。
本当に、分かっておらず…
質問に答えてくださっているのに、SurferOnWww様に
不快な気持ちを抱かせてしまい
申し訳ございません。

追加させて頂きました。

2
本文
                 <asp:CheckBoxField DataField="f2" HeaderText="牛" SortExpression="f2" />
                 <asp:CheckBoxField DataField="f3" HeaderText="豚" SortExpression="f3" />
             </Columns>
-
-            <FooterStyle BackColor="White" ForeColor="#333333" />
-            <HeaderStyle BackColor="#336666" Font-Bold="True" ForeColor="White" />
-            <PagerStyle BackColor="#336666" ForeColor="White" HorizontalAlign="Center" />
-            <RowStyle BackColor="White" ForeColor="#333333" />
-            <SelectedRowStyle BackColor="#339966" Font-Bold="True" ForeColor="White" />
-            <SortedAscendingCellStyle BackColor="#F7F7F7" />
-            <SortedAscendingHeaderStyle BackColor="#487575" />
-            <SortedDescendingCellStyle BackColor="#E5E5E5" />
-            <SortedDescendingHeaderStyle BackColor="#275353" />
         </asp:GridView>
             <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>" SelectCommand="SELECT ID, name, price, f1, f2, f3 FROM menu WHERE (f1 &lt;&gt; @f1) OR (f2 = @f2) OR (f3 = @f3)">
             <SelectParameters>

checkboxと一致しないgridviewの行を表示する方法

最近、勉強をし始めたばかりのプログラミング初心者です。

開発環境:Visual Studio 2015
データソース:SQL Server localDB

《テーブル詳細》

CREATE TABLE [dbo].[menu] (
    [ID]      INT            IDENTITY (1, 1) NOT NULL,
    [name] NVARCHAR (50) NOT NULL,
    [price]       INT         NOT NULL,
    [f1]       BIT            NOT NULL,
    [f2]       BIT            NOT NULL,
    [f3]       BIT            NOT NULL,

    PRIMARY KEY CLUSTERED ([ID] ASC),
);

《Visual Studio画面》
ckb1□ ckb2□ ckb3□
=====gridview=====

===============
[検索]

《やりたいこと》
ckb1をチェックして検索をおすと、ckb1のものを"含まない"データをGridviewで表示させたいです。
ckb1とf1,ckbとf2,ckb3とf3を同じ項目として一致させ
ckb1つまり「f1がtrueになっているデータ」を排除したものを表示させたいです。
もしckb1とckb2がどちらもtrueになっていたら、
「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。

GridViewはこのようになっております。

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames="ID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
            <Columns>
                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="ssa.aspx?ID={0}" HeaderText="詳細" NavigateUrl="~/ssa.aspx" Text="詳細" />
                <asp:BoundField DataField="name" HeaderText="名前" SortExpression="name" />
                <asp:BoundField DataField="price" HeaderText="値段" SortExpression="price" />
                <asp:CheckBoxField DataField="f1" HeaderText="鶏" SortExpression="f1" />
                <asp:CheckBoxField DataField="f2" HeaderText="牛" SortExpression="f2" />
                <asp:CheckBoxField DataField="f3" HeaderText="豚" SortExpression="f3" />
            </Columns>
        </asp:GridView>
            <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>" SelectCommand="SELECT ID, name, price, f1, f2, f3 FROM menu WHERE (f1 &lt;&gt; @f1) OR (f2 = @f2) OR (f3 = @f3)">
            <SelectParameters>
                <asp:ControlParameter ControlID="TextBox1" DefaultValue="%" Name="name" PropertyName="Text" Type="String" />
                <asp:ControlParameter ControlID="CheckBox1" DefaultValue="" Name="f1" PropertyName="Checked" />
                <asp:ControlParameter ControlID="CheckBox2" DefaultValue="" Name="f2" PropertyName="Checked" />
                <asp:ControlParameter ControlID="CheckBox3" DefaultValue="" Name="f3" PropertyName="Checked" />
            </SelectParameters>
        </asp:SqlDataSource>
    </form>
</body>
</html>

SurferOnWww様、大変申し訳ございません。
無視をしていたわけではなく、勘違いをしておりました。
完全というと、こういうことでしょうか。
本当に、分かっておらず…
質問に答えてくださっているのに、SurferOnWww様に
不快な気持ちを抱かせてしまい
申し訳ございません。

最近、勉強をし始めたばかりのプログラミング初心者です。

開発環境:Visual Studio 2015
データソース:SQL Server localDB

《テーブル詳細》
```Transact-SQL
CREATE TABLE [dbo].[menu] (
    [ID]      INT            IDENTITY (1, 1) NOT NULL,
    [name] NVARCHAR (50) NOT NULL,
    [price]       INT         NOT NULL,
    [f1]       BIT            NOT NULL,
    [f2]       BIT            NOT NULL,
    [f3]       BIT            NOT NULL,

    PRIMARY KEY CLUSTERED ([ID] ASC),
);
```
《Visual Studio画面》
ckb1□ ckb2□ ckb3□ 
=====gridview=====

===============
[検索]

《やりたいこと》
ckb1をチェックして検索をおすと、ckb1のものを"含まない"データをGridviewで表示させたいです。
ckb1とf1,ckbとf2,ckb3とf3を同じ項目として一致させ
ckb1つまり「f1がtrueになっているデータ」を排除したものを表示させたいです。
もしckb1とckb2がどちらもtrueになっていたら、
「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。


GridViewはこのようになっております。
```html
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames="ID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
            <Columns>
                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="ssa.aspx?ID={0}" HeaderText="詳細" NavigateUrl="~/ssa.aspx" Text="詳細" />
                <asp:BoundField DataField="name" HeaderText="名前" SortExpression="name" />
                <asp:BoundField DataField="price" HeaderText="値段" SortExpression="price" />
                <asp:CheckBoxField DataField="f1" HeaderText="鶏" SortExpression="f1" />
                <asp:CheckBoxField DataField="f2" HeaderText="牛" SortExpression="f2" />
                <asp:CheckBoxField DataField="f3" HeaderText="豚" SortExpression="f3" />
            </Columns>
        </asp:GridView>
            <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>" SelectCommand="SELECT ID, name, price, f1, f2, f3 FROM menu WHERE (f1 &lt;&gt; @f1) OR (f2 = @f2) OR (f3 = @f3)">
            <SelectParameters>
                <asp:ControlParameter ControlID="TextBox1" DefaultValue="%" Name="name" PropertyName="Text" Type="String" />
                <asp:ControlParameter ControlID="CheckBox1" DefaultValue="" Name="f1" PropertyName="Checked" />
                <asp:ControlParameter ControlID="CheckBox2" DefaultValue="" Name="f2" PropertyName="Checked" />
                <asp:ControlParameter ControlID="CheckBox3" DefaultValue="" Name="f3" PropertyName="Checked" />
            </SelectParameters>
        </asp:SqlDataSource>
    </form>
</body>
</html>
```
SurferOnWww様、大変申し訳ございません。
無視をしていたわけではなく、勘違いをしておりました。
完全というと、こういうことでしょうか。
本当に、分かっておらず…
質問に答えてくださっているのに、SurferOnWww様に
不快な気持ちを抱かせてしまい
申し訳ございません。

追加させて頂きました。

2
本文
 最近、勉強をし始めたばかりのプログラミング初心者です。
-asp.netにてvisual studioを用いてシステムを作っています。
-この度、同webページにおいてあるcheckboxをチェックし、検索ボタンを押すと
-gridviewの中からチェックされたcheckboxと一致するもの"以外"を
-表示できるようにしたいと考えていますが
-上手くいかず、困っております。
-画面配置と内容はこのようなものになっております。
 
-ckb1□ ckb2□ ckb3□
-=====gridview=====
-
-===============
-      [検索]
-
-
-Protected Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
- 'ckb1がチェックされボタンが押されたとき
-If CheckBox1.Checked Then...
- ~~~
-
-ポストデータを取得するReqest.formを使用する方法
-などいろいろな方法を調べてみたのですが、
-望む結果が産まれませんでした。
-
-知識が乏しく、私自身未熟すぎるとは思います。
-しかしどうしても解決させたい問題だと思っています。
-もし何かよい方法をご存知の方がいらっしゃいましたら
-ご教授頂きたいです。
-よろしくお願い致します。
-
-### **追記**
-
-
-申し訳ございません。多くの説明が抜けておりました。
-
 開発環境:Visual Studio 2015
 データソース:SQL Server localDB
 
 もしckb1とckb2がどちらもtrueになっていたら、
 「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。
 
-度々すみません。この質問サイト自体の仕組みや流儀を
-理解できていませんでした。
-この追加の方法でよろしいかったでしょうか?
-また、NULL値に関しては修正させていただきました。
 
-
-**追加**
-申し訳ございません。このようになっております。
 GridViewはこのようになっております。
 ```html
 <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames="ID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
                 <asp:CheckBoxField DataField="f2" HeaderText="牛" SortExpression="f2" />
                 <asp:CheckBoxField DataField="f3" HeaderText="豚" SortExpression="f3" />
             </Columns>
-            <EmptyDataTemplate>
-                <asp:Label ID="Label4" runat="server" Text="該当するデータがありません。&lt;br&gt;抽出条件を指定してから「検索」ボタンをクリックしてください。"></asp:Label>
-            </EmptyDataTemplate>
+
             <FooterStyle BackColor="White" ForeColor="#333333" />
             <HeaderStyle BackColor="#336666" Font-Bold="True" ForeColor="White" />
             <PagerStyle BackColor="#336666" ForeColor="White" HorizontalAlign="Center" />
             <SortedDescendingCellStyle BackColor="#E5E5E5" />
             <SortedDescendingHeaderStyle BackColor="#275353" />
         </asp:GridView>
+            <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>" SelectCommand="SELECT ID, name, price, f1, f2, f3 FROM menu WHERE (f1 &lt;&gt; @f1) OR (f2 = @f2) OR (f3 = @f3)">
+            <SelectParameters>
+                <asp:ControlParameter ControlID="TextBox1" DefaultValue="%" Name="name" PropertyName="Text" Type="String" />
+                <asp:ControlParameter ControlID="CheckBox1" DefaultValue="" Name="f1" PropertyName="Checked" />
+                <asp:ControlParameter ControlID="CheckBox2" DefaultValue="" Name="f2" PropertyName="Checked" />
+                <asp:ControlParameter ControlID="CheckBox3" DefaultValue="" Name="f3" PropertyName="Checked" />
+            </SelectParameters>
+        </asp:SqlDataSource>
+    </form>
+</body>
+</html>
 ```
-そして、SqlDataSourceのクエリはこのように記述しております。
-```sql
-SELECT ID, name, price, f1, f2, f3 FROM menu WHERE (f1 <> @f1) OR (f2 = @f2) OR (f3 = @f3) 
-```
+SurferOnWww様、大変申し訳ございません。
+無視をしていたわけではなく、勘違いをしておりました。
+完全というと、こういうことでしょうか。
+本当に、分かっておらず…
+質問に答えてくださっているのに、SurferOnWww様に
+不快な気持ちを抱かせてしまい
+申し訳ございません。

checkboxと一致しないgridviewの行を表示する方法

最近、勉強をし始めたばかりのプログラミング初心者です。

開発環境:Visual Studio 2015
データソース:SQL Server localDB

《テーブル詳細》

CREATE TABLE [dbo].[menu] (
    [ID]      INT            IDENTITY (1, 1) NOT NULL,
    [name] NVARCHAR (50) NOT NULL,
    [price]       INT         NOT NULL,
    [f1]       BIT            NOT NULL,
    [f2]       BIT            NOT NULL,
    [f3]       BIT            NOT NULL,

    PRIMARY KEY CLUSTERED ([ID] ASC),
);

《Visual Studio画面》
ckb1□ ckb2□ ckb3□
=====gridview=====

===============
[検索]

《やりたいこと》
ckb1をチェックして検索をおすと、ckb1のものを"含まない"データをGridviewで表示させたいです。
ckb1とf1,ckbとf2,ckb3とf3を同じ項目として一致させ
ckb1つまり「f1がtrueになっているデータ」を排除したものを表示させたいです。
もしckb1とckb2がどちらもtrueになっていたら、
「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。

GridViewはこのようになっております。

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames="ID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
            <Columns>
                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="ssa.aspx?ID={0}" HeaderText="詳細" NavigateUrl="~/ssa.aspx" Text="詳細" />
                <asp:BoundField DataField="name" HeaderText="名前" SortExpression="name" />
                <asp:BoundField DataField="price" HeaderText="値段" SortExpression="price" />
                <asp:CheckBoxField DataField="f1" HeaderText="鶏" SortExpression="f1" />
                <asp:CheckBoxField DataField="f2" HeaderText="牛" SortExpression="f2" />
                <asp:CheckBoxField DataField="f3" HeaderText="豚" SortExpression="f3" />
            </Columns>

            <FooterStyle BackColor="White" ForeColor="#333333" />
            <HeaderStyle BackColor="#336666" Font-Bold="True" ForeColor="White" />
            <PagerStyle BackColor="#336666" ForeColor="White" HorizontalAlign="Center" />
            <RowStyle BackColor="White" ForeColor="#333333" />
            <SelectedRowStyle BackColor="#339966" Font-Bold="True" ForeColor="White" />
            <SortedAscendingCellStyle BackColor="#F7F7F7" />
            <SortedAscendingHeaderStyle BackColor="#487575" />
            <SortedDescendingCellStyle BackColor="#E5E5E5" />
            <SortedDescendingHeaderStyle BackColor="#275353" />
        </asp:GridView>
            <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>" SelectCommand="SELECT ID, name, price, f1, f2, f3 FROM menu WHERE (f1 &lt;&gt; @f1) OR (f2 = @f2) OR (f3 = @f3)">
            <SelectParameters>
                <asp:ControlParameter ControlID="TextBox1" DefaultValue="%" Name="name" PropertyName="Text" Type="String" />
                <asp:ControlParameter ControlID="CheckBox1" DefaultValue="" Name="f1" PropertyName="Checked" />
                <asp:ControlParameter ControlID="CheckBox2" DefaultValue="" Name="f2" PropertyName="Checked" />
                <asp:ControlParameter ControlID="CheckBox3" DefaultValue="" Name="f3" PropertyName="Checked" />
            </SelectParameters>
        </asp:SqlDataSource>
    </form>
</body>
</html>

SurferOnWww様、大変申し訳ございません。
無視をしていたわけではなく、勘違いをしておりました。
完全というと、こういうことでしょうか。
本当に、分かっておらず…
質問に答えてくださっているのに、SurferOnWww様に
不快な気持ちを抱かせてしまい
申し訳ございません。

最近、勉強をし始めたばかりのプログラミング初心者です。

開発環境:Visual Studio 2015
データソース:SQL Server localDB

《テーブル詳細》
```Transact-SQL
CREATE TABLE [dbo].[menu] (
    [ID]      INT            IDENTITY (1, 1) NOT NULL,
    [name] NVARCHAR (50) NOT NULL,
    [price]       INT         NOT NULL,
    [f1]       BIT            NOT NULL,
    [f2]       BIT            NOT NULL,
    [f3]       BIT            NOT NULL,

    PRIMARY KEY CLUSTERED ([ID] ASC),
);
```
《Visual Studio画面》
ckb1□ ckb2□ ckb3□ 
=====gridview=====

===============
[検索]

《やりたいこと》
ckb1をチェックして検索をおすと、ckb1のものを"含まない"データをGridviewで表示させたいです。
ckb1とf1,ckbとf2,ckb3とf3を同じ項目として一致させ
ckb1つまり「f1がtrueになっているデータ」を排除したものを表示させたいです。
もしckb1とckb2がどちらもtrueになっていたら、
「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。


GridViewはこのようになっております。
```html
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames="ID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
            <Columns>
                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="ssa.aspx?ID={0}" HeaderText="詳細" NavigateUrl="~/ssa.aspx" Text="詳細" />
                <asp:BoundField DataField="name" HeaderText="名前" SortExpression="name" />
                <asp:BoundField DataField="price" HeaderText="値段" SortExpression="price" />
                <asp:CheckBoxField DataField="f1" HeaderText="鶏" SortExpression="f1" />
                <asp:CheckBoxField DataField="f2" HeaderText="牛" SortExpression="f2" />
                <asp:CheckBoxField DataField="f3" HeaderText="豚" SortExpression="f3" />
            </Columns>

            <FooterStyle BackColor="White" ForeColor="#333333" />
            <HeaderStyle BackColor="#336666" Font-Bold="True" ForeColor="White" />
            <PagerStyle BackColor="#336666" ForeColor="White" HorizontalAlign="Center" />
            <RowStyle BackColor="White" ForeColor="#333333" />
            <SelectedRowStyle BackColor="#339966" Font-Bold="True" ForeColor="White" />
            <SortedAscendingCellStyle BackColor="#F7F7F7" />
            <SortedAscendingHeaderStyle BackColor="#487575" />
            <SortedDescendingCellStyle BackColor="#E5E5E5" />
            <SortedDescendingHeaderStyle BackColor="#275353" />
        </asp:GridView>
            <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString2 %>" SelectCommand="SELECT ID, name, price, f1, f2, f3 FROM menu WHERE (f1 &lt;&gt; @f1) OR (f2 = @f2) OR (f3 = @f3)">
            <SelectParameters>
                <asp:ControlParameter ControlID="TextBox1" DefaultValue="%" Name="name" PropertyName="Text" Type="String" />
                <asp:ControlParameter ControlID="CheckBox1" DefaultValue="" Name="f1" PropertyName="Checked" />
                <asp:ControlParameter ControlID="CheckBox2" DefaultValue="" Name="f2" PropertyName="Checked" />
                <asp:ControlParameter ControlID="CheckBox3" DefaultValue="" Name="f3" PropertyName="Checked" />
            </SelectParameters>
        </asp:SqlDataSource>
    </form>
</body>
</html>
```
SurferOnWww様、大変申し訳ございません。
無視をしていたわけではなく、勘違いをしておりました。
完全というと、こういうことでしょうか。
本当に、分かっておらず…
質問に答えてくださっているのに、SurferOnWww様に
不快な気持ちを抱かせてしまい
申し訳ございません。

追加させて頂きました。

2
本文
 理解できていませんでした。
 この追加の方法でよろしいかったでしょうか?
 また、NULL値に関しては修正させていただきました。
+
+
+**追加**
+申し訳ございません。このようになっております。
+GridViewはこのようになっております。
+```html
+<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames="ID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
+            <Columns>
+                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="ssa.aspx?ID={0}" HeaderText="詳細" NavigateUrl="~/ssa.aspx" Text="詳細" />
+                <asp:BoundField DataField="name" HeaderText="名前" SortExpression="name" />
+                <asp:BoundField DataField="price" HeaderText="値段" SortExpression="price" />
+                <asp:CheckBoxField DataField="f1" HeaderText="鶏" SortExpression="f1" />
+                <asp:CheckBoxField DataField="f2" HeaderText="牛" SortExpression="f2" />
+                <asp:CheckBoxField DataField="f3" HeaderText="豚" SortExpression="f3" />
+            </Columns>
+            <EmptyDataTemplate>
+                <asp:Label ID="Label4" runat="server" Text="該当するデータがありません。&lt;br&gt;抽出条件を指定してから「検索」ボタンをクリックしてください。"></asp:Label>
+            </EmptyDataTemplate>
+            <FooterStyle BackColor="White" ForeColor="#333333" />
+            <HeaderStyle BackColor="#336666" Font-Bold="True" ForeColor="White" />
+            <PagerStyle BackColor="#336666" ForeColor="White" HorizontalAlign="Center" />
+            <RowStyle BackColor="White" ForeColor="#333333" />
+            <SelectedRowStyle BackColor="#339966" Font-Bold="True" ForeColor="White" />
+            <SortedAscendingCellStyle BackColor="#F7F7F7" />
+            <SortedAscendingHeaderStyle BackColor="#487575" />
+            <SortedDescendingCellStyle BackColor="#E5E5E5" />
+            <SortedDescendingHeaderStyle BackColor="#275353" />
+        </asp:GridView>
+```
+そして、SqlDataSourceのクエリはこのように記述しております。
+```sql
+SELECT ID, name, price, f1, f2, f3 FROM menu WHERE (f1 <> @f1) OR (f2 = @f2) OR (f3 = @f3) 
+```

checkboxと一致しないgridviewの行を表示する方法

最近、勉強をし始めたばかりのプログラミング初心者です。
asp.netにてvisual studioを用いてシステムを作っています。
この度、同webページにおいてあるcheckboxをチェックし、検索ボタンを押すと
gridviewの中からチェックされたcheckboxと一致するもの"以外"を
表示できるようにしたいと考えていますが
上手くいかず、困っております。
画面配置と内容はこのようなものになっております。

ckb1□ ckb2□ ckb3□
=====gridview=====

===============
[検索]

Protected Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
'ckb1がチェックされボタンが押されたとき
If CheckBox1.Checked Then...
~~~

ポストデータを取得するReqest.formを使用する方法
などいろいろな方法を調べてみたのですが、
望む結果が産まれませんでした。

知識が乏しく、私自身未熟すぎるとは思います。
しかしどうしても解決させたい問題だと思っています。
もし何かよい方法をご存知の方がいらっしゃいましたら
ご教授頂きたいです。
よろしくお願い致します。

追記

申し訳ございません。多くの説明が抜けておりました。

開発環境:Visual Studio 2015
データソース:SQL Server localDB

《テーブル詳細》

CREATE TABLE [dbo].[menu] (
    [ID]      INT            IDENTITY (1, 1) NOT NULL,
    [name] NVARCHAR (50) NOT NULL,
    [price]       INT         NOT NULL,
    [f1]       BIT            NOT NULL,
    [f2]       BIT            NOT NULL,
    [f3]       BIT            NOT NULL,

    PRIMARY KEY CLUSTERED ([ID] ASC),
);

《Visual Studio画面》
ckb1□ ckb2□ ckb3□
=====gridview=====

===============
[検索]

《やりたいこと》
ckb1をチェックして検索をおすと、ckb1のものを"含まない"データをGridviewで表示させたいです。
ckb1とf1,ckbとf2,ckb3とf3を同じ項目として一致させ
ckb1つまり「f1がtrueになっているデータ」を排除したものを表示させたいです。
もしckb1とckb2がどちらもtrueになっていたら、
「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。

度々すみません。この質問サイト自体の仕組みや流儀を
理解できていませんでした。
この追加の方法でよろしいかったでしょうか?
また、NULL値に関しては修正させていただきました。

追加
申し訳ございません。このようになっております。
GridViewはこのようになっております。

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames="ID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
            <Columns>
                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="ssa.aspx?ID={0}" HeaderText="詳細" NavigateUrl="~/ssa.aspx" Text="詳細" />
                <asp:BoundField DataField="name" HeaderText="名前" SortExpression="name" />
                <asp:BoundField DataField="price" HeaderText="値段" SortExpression="price" />
                <asp:CheckBoxField DataField="f1" HeaderText="鶏" SortExpression="f1" />
                <asp:CheckBoxField DataField="f2" HeaderText="牛" SortExpression="f2" />
                <asp:CheckBoxField DataField="f3" HeaderText="豚" SortExpression="f3" />
            </Columns>
            <EmptyDataTemplate>
                <asp:Label ID="Label4" runat="server" Text="該当するデータがありません。&lt;br&gt;抽出条件を指定してから「検索」ボタンをクリックしてください。"></asp:Label>
            </EmptyDataTemplate>
            <FooterStyle BackColor="White" ForeColor="#333333" />
            <HeaderStyle BackColor="#336666" Font-Bold="True" ForeColor="White" />
            <PagerStyle BackColor="#336666" ForeColor="White" HorizontalAlign="Center" />
            <RowStyle BackColor="White" ForeColor="#333333" />
            <SelectedRowStyle BackColor="#339966" Font-Bold="True" ForeColor="White" />
            <SortedAscendingCellStyle BackColor="#F7F7F7" />
            <SortedAscendingHeaderStyle BackColor="#487575" />
            <SortedDescendingCellStyle BackColor="#E5E5E5" />
            <SortedDescendingHeaderStyle BackColor="#275353" />
        </asp:GridView>

そして、SqlDataSourceのクエリはこのように記述しております。

SELECT ID, name, price, f1, f2, f3 FROM menu WHERE (f1 <> @f1) OR (f2 = @f2) OR (f3 = @f3) 
最近、勉強をし始めたばかりのプログラミング初心者です。
asp.netにてvisual studioを用いてシステムを作っています。
この度、同webページにおいてあるcheckboxをチェックし、検索ボタンを押すと
gridviewの中からチェックされたcheckboxと一致するもの"以外"を
表示できるようにしたいと考えていますが
上手くいかず、困っております。
画面配置と内容はこのようなものになっております。

ckb1□ ckb2□ ckb3□
=====gridview=====

===============
      [検索]


Protected Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
 'ckb1がチェックされボタンが押されたとき
If CheckBox1.Checked Then...
 ~~~

ポストデータを取得するReqest.formを使用する方法
などいろいろな方法を調べてみたのですが、
望む結果が産まれませんでした。

知識が乏しく、私自身未熟すぎるとは思います。
しかしどうしても解決させたい問題だと思っています。
もし何かよい方法をご存知の方がいらっしゃいましたら
ご教授頂きたいです。
よろしくお願い致します。

### **追記**


申し訳ございません。多くの説明が抜けておりました。

開発環境:Visual Studio 2015
データソース:SQL Server localDB

《テーブル詳細》
```Transact-SQL
CREATE TABLE [dbo].[menu] (
    [ID]      INT            IDENTITY (1, 1) NOT NULL,
    [name] NVARCHAR (50) NOT NULL,
    [price]       INT         NOT NULL,
    [f1]       BIT            NOT NULL,
    [f2]       BIT            NOT NULL,
    [f3]       BIT            NOT NULL,

    PRIMARY KEY CLUSTERED ([ID] ASC),
);
```
《Visual Studio画面》
ckb1□ ckb2□ ckb3□ 
=====gridview=====

===============
[検索]

《やりたいこと》
ckb1をチェックして検索をおすと、ckb1のものを"含まない"データをGridviewで表示させたいです。
ckb1とf1,ckbとf2,ckb3とf3を同じ項目として一致させ
ckb1つまり「f1がtrueになっているデータ」を排除したものを表示させたいです。
もしckb1とckb2がどちらもtrueになっていたら、
「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。

度々すみません。この質問サイト自体の仕組みや流儀を
理解できていませんでした。
この追加の方法でよろしいかったでしょうか?
また、NULL値に関しては修正させていただきました。


**追加**
申し訳ございません。このようになっております。
GridViewはこのようになっております。
```html
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="White" BorderColor="#336666" BorderStyle="Double" BorderWidth="3px" CellPadding="4" DataKeyNames="ID" DataSourceID="SqlDataSource1" GridLines="Horizontal" AllowPaging="True">
            <Columns>
                <asp:HyperLinkField DataNavigateUrlFields="cookID" DataNavigateUrlFormatString="ssa.aspx?ID={0}" HeaderText="詳細" NavigateUrl="~/ssa.aspx" Text="詳細" />
                <asp:BoundField DataField="name" HeaderText="名前" SortExpression="name" />
                <asp:BoundField DataField="price" HeaderText="値段" SortExpression="price" />
                <asp:CheckBoxField DataField="f1" HeaderText="鶏" SortExpression="f1" />
                <asp:CheckBoxField DataField="f2" HeaderText="牛" SortExpression="f2" />
                <asp:CheckBoxField DataField="f3" HeaderText="豚" SortExpression="f3" />
            </Columns>
            <EmptyDataTemplate>
                <asp:Label ID="Label4" runat="server" Text="該当するデータがありません。&lt;br&gt;抽出条件を指定してから「検索」ボタンをクリックしてください。"></asp:Label>
            </EmptyDataTemplate>
            <FooterStyle BackColor="White" ForeColor="#333333" />
            <HeaderStyle BackColor="#336666" Font-Bold="True" ForeColor="White" />
            <PagerStyle BackColor="#336666" ForeColor="White" HorizontalAlign="Center" />
            <RowStyle BackColor="White" ForeColor="#333333" />
            <SelectedRowStyle BackColor="#339966" Font-Bold="True" ForeColor="White" />
            <SortedAscendingCellStyle BackColor="#F7F7F7" />
            <SortedAscendingHeaderStyle BackColor="#487575" />
            <SortedDescendingCellStyle BackColor="#E5E5E5" />
            <SortedDescendingHeaderStyle BackColor="#275353" />
        </asp:GridView>
```
そして、SqlDataSourceのクエリはこのように記述しております。
```sql
SELECT ID, name, price, f1, f2, f3 FROM menu WHERE (f1 <> @f1) OR (f2 = @f2) OR (f3 = @f3) 
```

追加させて頂きました。

2
本文
 もし何かよい方法をご存知の方がいらっしゃいましたら
 ご教授頂きたいです。
 よろしくお願い致します。
+
+### **追記**
+
+
+申し訳ございません。多くの説明が抜けておりました。
+
+開発環境:Visual Studio 2015
+データソース:SQL Server localDB
+
+《テーブル詳細》
+```Transact-SQL
+CREATE TABLE [dbo].[menu] (
+    [ID]      INT            IDENTITY (1, 1) NOT NULL,
+    [name] NVARCHAR (50) NOT NULL,
+    [price]       INT         NOT NULL,
+    [f1]       BIT            NOT NULL,
+    [f2]       BIT            NOT NULL,
+    [f3]       BIT            NOT NULL,
+
+    PRIMARY KEY CLUSTERED ([ID] ASC),
+);
+```
+《Visual Studio画面》
+ckb1□ ckb2□ ckb3□ 
+=====gridview=====
+
+===============
+[検索]
+
+《やりたいこと》
+ckb1をチェックして検索をおすと、ckb1のものを"含まない"データをGridviewで表示させたいです。
+ckb1とf1,ckbとf2,ckb3とf3を同じ項目として一致させ
+ckb1つまり「f1がtrueになっているデータ」を排除したものを表示させたいです。
+もしckb1とckb2がどちらもtrueになっていたら、
+「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。
+
+度々すみません。この質問サイト自体の仕組みや流儀を
+理解できていませんでした。
+この追加の方法でよろしいかったでしょうか?
+また、NULL値に関しては修正させていただきました。

checkboxと一致しないgridviewの行を表示する方法

最近、勉強をし始めたばかりのプログラミング初心者です。
asp.netにてvisual studioを用いてシステムを作っています。
この度、同webページにおいてあるcheckboxをチェックし、検索ボタンを押すと
gridviewの中からチェックされたcheckboxと一致するもの"以外"を
表示できるようにしたいと考えていますが
上手くいかず、困っております。
画面配置と内容はこのようなものになっております。

ckb1□ ckb2□ ckb3□
=====gridview=====

===============
[検索]

Protected Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
'ckb1がチェックされボタンが押されたとき
If CheckBox1.Checked Then...
~~~

ポストデータを取得するReqest.formを使用する方法
などいろいろな方法を調べてみたのですが、
望む結果が産まれませんでした。

知識が乏しく、私自身未熟すぎるとは思います。
しかしどうしても解決させたい問題だと思っています。
もし何かよい方法をご存知の方がいらっしゃいましたら
ご教授頂きたいです。
よろしくお願い致します。

追記

申し訳ございません。多くの説明が抜けておりました。

開発環境:Visual Studio 2015
データソース:SQL Server localDB

《テーブル詳細》

CREATE TABLE [dbo].[menu] (
    [ID]      INT            IDENTITY (1, 1) NOT NULL,
    [name] NVARCHAR (50) NOT NULL,
    [price]       INT         NOT NULL,
    [f1]       BIT            NOT NULL,
    [f2]       BIT            NOT NULL,
    [f3]       BIT            NOT NULL,

    PRIMARY KEY CLUSTERED ([ID] ASC),
);

《Visual Studio画面》
ckb1□ ckb2□ ckb3□
=====gridview=====

===============
[検索]

《やりたいこと》
ckb1をチェックして検索をおすと、ckb1のものを"含まない"データをGridviewで表示させたいです。
ckb1とf1,ckbとf2,ckb3とf3を同じ項目として一致させ
ckb1つまり「f1がtrueになっているデータ」を排除したものを表示させたいです。
もしckb1とckb2がどちらもtrueになっていたら、
「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。

度々すみません。この質問サイト自体の仕組みや流儀を
理解できていませんでした。
この追加の方法でよろしいかったでしょうか?
また、NULL値に関しては修正させていただきました。

最近、勉強をし始めたばかりのプログラミング初心者です。
asp.netにてvisual studioを用いてシステムを作っています。
この度、同webページにおいてあるcheckboxをチェックし、検索ボタンを押すと
gridviewの中からチェックされたcheckboxと一致するもの"以外"を
表示できるようにしたいと考えていますが
上手くいかず、困っております。
画面配置と内容はこのようなものになっております。

ckb1□ ckb2□ ckb3□
=====gridview=====

===============
      [検索]


Protected Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
 'ckb1がチェックされボタンが押されたとき
If CheckBox1.Checked Then...
 ~~~

ポストデータを取得するReqest.formを使用する方法
などいろいろな方法を調べてみたのですが、
望む結果が産まれませんでした。

知識が乏しく、私自身未熟すぎるとは思います。
しかしどうしても解決させたい問題だと思っています。
もし何かよい方法をご存知の方がいらっしゃいましたら
ご教授頂きたいです。
よろしくお願い致します。

### **追記**


申し訳ございません。多くの説明が抜けておりました。

開発環境:Visual Studio 2015
データソース:SQL Server localDB

《テーブル詳細》
```Transact-SQL
CREATE TABLE [dbo].[menu] (
    [ID]      INT            IDENTITY (1, 1) NOT NULL,
    [name] NVARCHAR (50) NOT NULL,
    [price]       INT         NOT NULL,
    [f1]       BIT            NOT NULL,
    [f2]       BIT            NOT NULL,
    [f3]       BIT            NOT NULL,

    PRIMARY KEY CLUSTERED ([ID] ASC),
);
```
《Visual Studio画面》
ckb1□ ckb2□ ckb3□ 
=====gridview=====

===============
[検索]

《やりたいこと》
ckb1をチェックして検索をおすと、ckb1のものを"含まない"データをGridviewで表示させたいです。
ckb1とf1,ckbとf2,ckb3とf3を同じ項目として一致させ
ckb1つまり「f1がtrueになっているデータ」を排除したものを表示させたいです。
もしckb1とckb2がどちらもtrueになっていたら、
「f1のみ・f1とf2・f2のみ」がtrueになっているデータを排除させたいです。

度々すみません。この質問サイト自体の仕組みや流儀を
理解できていませんでした。
この追加の方法でよろしいかったでしょうか?
また、NULL値に関しては修正させていただきました。

質問を投稿

checkboxと一致しないgridviewの行を表示する方法

最近、勉強をし始めたばかりのプログラミング初心者です。
asp.netにてvisual studioを用いてシステムを作っています。
この度、同webページにおいてあるcheckboxをチェックし、検索ボタンを押すと
gridviewの中からチェックされたcheckboxと一致するもの"以外"を
表示できるようにしたいと考えていますが
上手くいかず、困っております。
画面配置と内容はこのようなものになっております。

ckb1□ ckb2□ ckb3□
=====gridview=====

===============
[検索]

Protected Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
'ckb1がチェックされボタンが押されたとき
If CheckBox1.Checked Then...
~~~

ポストデータを取得するReqest.formを使用する方法
などいろいろな方法を調べてみたのですが、
望む結果が産まれませんでした。

知識が乏しく、私自身未熟すぎるとは思います。
しかしどうしても解決させたい問題だと思っています。
もし何かよい方法をご存知の方がいらっしゃいましたら
ご教授頂きたいです。
よろしくお願い致します。

最近、勉強をし始めたばかりのプログラミング初心者です。
asp.netにてvisual studioを用いてシステムを作っています。
この度、同webページにおいてあるcheckboxをチェックし、検索ボタンを押すと
gridviewの中からチェックされたcheckboxと一致するもの"以外"を
表示できるようにしたいと考えていますが
上手くいかず、困っております。
画面配置と内容はこのようなものになっております。

ckb1□ ckb2□ ckb3□
=====gridview=====

===============
      [検索]


Protected Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
 'ckb1がチェックされボタンが押されたとき
If CheckBox1.Checked Then...
 ~~~

ポストデータを取得するReqest.formを使用する方法
などいろいろな方法を調べてみたのですが、
望む結果が産まれませんでした。

知識が乏しく、私自身未熟すぎるとは思います。
しかしどうしても解決させたい問題だと思っています。
もし何かよい方法をご存知の方がいらっしゃいましたら
ご教授頂きたいです。
よろしくお願い致します。