Possible Duplicate:
Calculating age from birthday
How do you calculate age in years, taking input from TextBox in the format dd/MM/yyyy?
e.g.
input: txtDOB.Text 20/02/1989 (String format)
output: txtAge.Text 23
Possible Duplicate:
Calculating age from birthday
How do you calculate age in years, taking input from TextBox in the format dd/MM/yyyy?
e.g.
input: txtDOB.Text 20/02/1989 (String format)
output: txtAge.Text 23
 
    
     
    
    You can use the Substract method of DateTime (link) and then use the Days property to determine the actual age:
DateTime now = DateTime.Now;
DateTime givenDate = DateTime.Parse(input);
int days = now.Subtract(givenDate).Days
int age = Math.Floor(days / 365.24219)
 
    
    As already noted in a comment, the correct answer is here: Calculate age in C#
You just need to get the birthday as a DateTime:
DateTime bday = DateTime.ParseExact("20/02/1989", "dd/MM/yyyy", CultureInfo.InvariantCulture);
 
    
     
    
    TimeSpan TS = DateTime.Now - new DateTime(1989, 02, 20);
double Years = TS.TotalDays / 365.25;  // 365 1/4 days per year
 
    
    The following will work once you have parsed the birth date into a DateTime:
static int AgeInYears(DateTime birthday, DateTime today)
{
    return ((today.Year - birthday.Year) * 372 + (today.Month - birthday.Month) * 31 + (today.Day - birthday.Day)) / 372;
}
Parse the date like so:
DateTime dob = DateTime.ParseExact("20/02/1989", "dd/MM/yyyy", CultureInfo.InvariantCulture);
And a sample program:
using System;
namespace Demo
{
    class Program
    {
        static void Main(string[] args)
        {
            DateTime dob = new DateTime(2010, 12, 30);
            DateTime today = DateTime.Now;
            int age = AgeInYears(dob, today);
            Console.WriteLine(age); // Prints "1"
        }
        static int AgeInYears(DateTime birthday, DateTime today)
        {
            return ((today.Year - birthday.Year) * 372 + (today.Month - birthday.Month) * 31 + (today.Day - birthday.Day)) / 372;
        }
    }
}
 
    
    This answer isn't the most efficient as it uses a loop, but it doesn't rely on using 365.25 magic numbers either.
A function to return the whole number of years from a datetime to today:
public static int CalcYears(DateTime fromDate)
    {
        int years = 0;
        DateTime toDate = DateTime.Now;
        while (toDate.AddYears(-1) >= fromDate)
        {
            years++;
            toDate = toDate.AddYears(-1);
        }
        return years;
    }
Usage:
int age = CalcYears(DateTime.ParseExact(txtDateOfBirth.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture));
 
    
    var date = DateTime.ParseExact("20/02/1989", "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture);
var age = (DateTime.Today.Year - date.Year);
Console.WriteLine(age);
 
    
    Try this
string[] AgeVal=textbox.text.split('/');
string Year=AgeVal[2].tostring();
string CurrentYear= DateTime.Now.Date.Year.ToString();
int Age=Convert.ToInt16((Current))-Convert.ToInt16((Year));
Subtract the two values and get your age.
 
    
    