Transposing/Wrangling Database Table
The only way I see with such a design is to self join the table several times. This means a JOIN for each column required in the output.

Notes:


The sample used is available toward the end and in this SQL Fiddle. 
You will have to figure out what the value of FormElement means when writing the query
An age value has been added to it (bigger sample).
Expect bad performances with such a design on a large data set
An index on FormElement and Entry including Value or filtered indexes on FormElement may help. 
It uses 1 subquery for each object because it helps see the separation between self joins.
I suppose there is always a row for each object from the form (hence the INNER JOIN)
I replace isMale by a CASE statement and Male or Female. It may help you.
Views may help writing shorter queries if some combination are often used.


People between 30 and 40

For example, if you want people between 30 and 40:

SELECT name.Entry
    , Name = name.[Value]
    , Sex = CASE WHEN sex.[Value] = 'True' THEN 'Male' ELSE 'Female' END 
    , Age = age.[Value]
FROM (
    SELECT [Entry], [Value] FROM data WHERE [FormElement] = 'Textbox1'
) name
INNER JOIN (
    SELECT [Entry], [Value] FROM data WHERE [FormElement] = 'Checkbox1'
) sex 
    ON name.Entry = sex.Entry
INNER JOIN (
    SELECT [Entry], [Value] FROM data WHERE [FormElement] = 'Textbox2'
) age
    ON name.Entry = age.Entry
WHERE age.[Value] &gt; 30 AND age.[Value] &lt; 40
;


Output:

Entry   Name        Sex     Age
1       Joe Smith   Male    32
3       Lucy Smith  Female  35


Name starting with a J

For people with a name with a J:

SELECT name.Entry
    , Name = name.[Value]
    , Sex = CASE WHEN sex.[Value] = 'True' THEN 'Male' ELSE 'Female' END 
    , Age = age.[Value]
FROM (
    SELECT [Entry], [Value] FROM data WHERE [FormElement] = 'Textbox1'
) name
INNER JOIN (
    SELECT [Entry], [Value] FROM data WHERE [FormElement] = 'Checkbox1'
) sex 
    ON name.Entry = sex.Entry
INNER JOIN (
    SELECT [Entry], [Value] FROM data WHERE [FormElement] = 'Textbox2'
) age
    ON name.Entry = age.Entry
WHERE name.[Value] LIKE 'j%'
;


Output:

Entry   Name            Sex     Age
1       Joe Smith       Male    32
2       Jane Johnson    Female  25


Sample data used

CREATE TABLE data
    ([Entry] int, [FormElement] varchar(9), [Value] varchar(12))
;

INSERT INTO data
    ([Entry], [FormElement], [Value])
VALUES
    (1, 'Checkbox1', 'True'),
    (1, 'Textbox1', 'Joe Smith'),
    (1, 'Textbox2', '32'),
    (2, 'Checkbox1', 'False'),
    (2, 'Textbox1', 'Jane Johnson'),
    (2, 'Textbox2', '25'),
    (3, 'Checkbox1', 'False'),
    (3, 'Textbox1', 'Lucy Smith'),
    (3, 'Textbox2', '35')
;